Вывод системы шаблонов PHP - PullRequest
0 голосов
/ 31 марта 2011

Я использую систему шаблонов в php, поэтому мой код похож на этот, например ...

$template->addVar ( 'thenameoftemplate', 'thenameofsubtemplate',"what to output");

И этот код я вывожу в HTML-файл, как ... {thenamefsubtemplate} ..

Но у меня проблема, когда я пытаюсь вывести из базы данных что-то с шаблоном, как в приведенном выше примере, но из базы данных, это не работает, только 1 вывод из строк, но при выводе его снаружишаблона он работает ..

Я попытался вывести с помощью, foreach, в то время как eaven с for из базы данных и вывести его в шаблон, но он показывает только один результат.

Как исправитьчто, я не хочу грести весь результат и выводить их.

Обновление

На самом деле я не знаю, что такое система шаблонов, какой-то скрипт был сданмне и .. все было хорошо, пока база данных не выводится ..

Вот моя последняя попытка с for ..

if (check_group_access_bool('show_admin_panel_button')) {
            $template->addGlobalVar('admin','<BR><a href="/users/download_list/'. $user[0]['id'] .'.html">виж Ñмъкваните пеÑни</a><BR><img src="/images/icons/edit-user-32x32.png" hspace="2" alt="редактирай" align="absmiddle"><a href="/admin/edit_user/'. $user[0]['id'] .'.html">редактирай</a>');
}
            $sudtwo = $_SESSION['user']['id'];
$fvsmt = mysql_query("select * from fav where user_id=$sudtwo");
if(isset($_SESSION['user']['id'])){

while($rowings = mysql_fetch_array($fvsmt)) {
$template->addVar( 'userprofile', 'userprofiletwo',"<tr><th nowrap valign=\"TOP\" align=\"LEFT\">  ñòèë: ".$rowings['name']." <form method=\"post\"><input type=\"submit\" value=\"premahni ot liubimi\" name=\"del\"></form>></th></tr>");

if(isset($_POST['del']))
{
mysql_query("DELETE FROM fav WHERE name_id=".$rowings['name_id']."");



}
echo"".$rowings['name']."<br>";

}
}

Это в php, а здесь HTML

<template:tmpl name="userprofile">
{USERPROFILETWO}
</template:tmpl>

Вот так он выводит ..

В коде php где мое эхо работает, ноздесь в html выводится только одна строка.

1 Ответ

2 голосов
/ 31 марта 2011

edit: OK, вы используете что-то под названием patTemplate , которое не обновлялось в течение нескольких лет. Я нашел некоторую документацию , и, как только вы правильно настроили свой PHP, это в вашем html должно работать:

<table> 
  <patTemplate:tmpl name="userprofile"> 
    {userprofiletwo}
  </patTemplate:tmpl>
</table>

НО, ваш PHP немного беспорядок. Что у вас есть в основном:

for () {
  $rowings = ...;
  //you are overwriting the variable each time here
  $template->addVar('userprofile', 'userprofiletwo', $rowings); 
}

И я думаю, что вы хотите что-то вроде:

$rowings = array();
for () {
  // make an array of your data
  $rowings[] = ...;
}
// and call addVar *once*
$template->addVar('userprofile', 'userprofiletwo', $rowings);

Теперь {userprofiletwo} - это массив, и вы можете зациклить его в своем шаблоне.

Кроме того, я не уверен, какова цель этого бита кода:

if(isset($_SESSION['user']['id'])){
}

так как он ничего не делает ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...