Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: SMARTY:проблема вывода данных всего массива в цикле проблема в синтаксисе.

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (2): [1] 2 »   

> Без описания
Lola
Отправлено: 25 Июля, 2007 - 14:29:52
Post Id


Гость


Покинул форум
Сообщений всего: 85
Дата рег-ции: Июнь 2007  
Откуда: Sachsen .Zwickau


Помог: 0 раз(а)

[+]


Немогу сообразить куда что прописать, как только уже не пробовала , ему ничего не нравиться:
не могу понять куда добавлять переменную name ="num" из {section} во время вывода на экран
-->мне нужно вывести в таблице информацию o переменных массива $user при разных меняюшихся id.

php-code:
PHP:
скопировать код в буфер обмена
  1.  
  2. $sql=sprintf("SELECT
  3.                    id as n_id ...
  4.              FROM
  5.                    users
  6.             ");
  7.                        
  8.                         $result=mysql_query($sql) or die(mysql_error());
  9.                         $num=mysql_num_rows($result);
  10. while ($row=mysql_fetch_assoc($result))
  11. {
  12.         $user=array(  "id"   => $row['n_id']...     );
  13. }
  14. $smarty->assign("user",$user);
  15.          
  16.  

template:
PHP:
скопировать код в буфер обмена
  1.  
  2. {section name="num" loop=$user.id}
  3. <tr>
  4.    <td bordercolor="#006400" border="1" bgcolor="#B0E2FF" >
  5.         {$user[num].id}
  6.   </td>...
  7. <tr>
  8. {/section}
  9.  

//.............................. ................................ ...........//
пробовала :
php : $smarty->assign("id",$row['n_id']);
tpl: {section name="num" loop=$id}
{$id[num]}
{/section}

HE выводит
выводит лишь пустую таблицу ne vidit peremennie
при попытке
{$user.id[num]}
не все значения толко -->он просто делает издевательские веши -->буквы sm.вложенный фаил --> ну вообше -то так и должно быть но это так лишь забавная попытка разобраться куда сунуть name="num"

где-то что-то упускаю не вижу --> МОЖЕТ КТО УВИДЕТ???

//.............................. ................................ .........//

Заранее спасибо
Прикреплено изображение (Нажмите для увеличения)
att-46a73b2f5d8d3able.JPG
 
 Top
evgenijj
Отправлено: 25 Июля, 2007 - 15:19:25
Post Id



Участник


Покинул форум
Сообщений всего: 1212
Дата рег-ции: Авг. 2006  
Откуда: Москва


Помог: 10 раз(а)




Медитируй над вот этой строкой - до просветления
$user=array( "id" => $row['n_id']... );
 
 Top
Lola
Отправлено: 25 Июля, 2007 - 16:24:45
Post Id


Гость


Покинул форум
Сообщений всего: 85
Дата рег-ции: Июнь 2007  
Откуда: Sachsen .Zwickau


Помог: 0 раз(а)

[+]


evgenijj пишет:
Медитируй над вот этой строкой - до просветления
$user=array( "id" => $row['n_id']... );

Нахмурился
блин этот смарти --> дело в $smarty->assign() и $smarty->append()
для вывода всех элементов лучше использовать $smarty->append()...hm
я так и думала маленькая гадость где-нибудь......
до сих пор не могу уловить и запомнить разницу между $smarty->assign() и $smarty->append() и на этом каждый раз застреваюНедовольство, огорчение
главное вроде получила ,что хотела спасибо за УлыбкавдохновениеУлыбка
 
 Top
evgenijj
Отправлено: 25 Июля, 2007 - 16:56:51
Post Id



Участник


Покинул форум
Сообщений всего: 1212
Дата рег-ции: Авг. 2006  
Откуда: Москва


Помог: 10 раз(а)




Lola пишет:
evgenijj пишет:
Медитируй над вот этой строкой - до просветления
$user=array( "id" => $row['n_id']... );

блин этот смарти --> дело в $smarty->assign() и $smarty->append()

Блин, не в коня корм. Вот ты мне расскажи, какой смысл в этой конструкции
PHP:
скопировать код в буфер обмена
  1.  
  2.  while ($row=mysql_fetch_assoc($result))
  3.  {
  4.          $user = $row;
  5.  }
  6.  

При каждой итерации в переменную $user записывается новое значение, ЗАТИРАЯ записанное ранее.
 
 Top
Lola
Отправлено: 25 Июля, 2007 - 17:28:58
Post Id


Гость


Покинул форум
Сообщений всего: 85
Дата рег-ции: Июнь 2007  
Откуда: Sachsen .Zwickau


Помог: 0 раз(а)

[+]


evgenijj пишет:
Lola пишет:
evgenijj пишет:
Медитируй над вот этой строкой - до просветления
$user=array( "id" => $row['n_id']... );

блин этот смарти --> дело в $smarty->assign() и $smarty->append()

Блин, не в коня корм. Вот ты мне расскажи, какой смысл в этой конструкции
PHP:
скопировать код в буфер обмена
  1.  
  2.  while ($row=mysql_fetch_assoc($result))
  3.  {
  4.          $user = $row;
  5.  }
  6.  

При каждой итерации в переменную $user записывается новое значение, ЗАТИРАЯ записанное ранее.


да я теряю предыдущее значение а $smarty->append() дает всегда предыдущее значениe...
вы имеете ввиду что я получила не то что нужно...
ах да ето всего лиш вывод текста а как я нужый id возьму
хмм да опять я вернулась к ассоц. массиву опять алиасы ну не понимаю...
а ето нужно понять потому что мне ето всегда нужно...
i kajdyjj raz tormoz na etom
как мне каждый раз быть?
Ведь я так и буду получать последнее значение т.к. предыдушее каждый раз "стирается" при прогоне в цикле нового ряда


 
 Top
evgenijj
Отправлено: 25 Июля, 2007 - 20:40:16
Post Id



Участник


Покинул форум
Сообщений всего: 1212
Дата рег-ции: Авг. 2006  
Откуда: Москва


Помог: 10 раз(а)




Lola пишет:

Ведь я так и буду получать последнее значение т.к. предыдушее каждый раз "стирается" при прогоне в цикле нового ряда

PHP:
скопировать код в буфер обмена
  1.  
  2.   while ($row=mysql_fetch_assoc($result))  
  3.   {  
  4.           $user[] = $row;  
  5.   }
  6.  

Учи мат. часть
 
 Top
Lola
Отправлено: 26 Июля, 2007 - 11:36:06
Post Id


Гость


Покинул форум
Сообщений всего: 85
Дата рег-ции: Июнь 2007  
Откуда: Sachsen .Zwickau


Помог: 0 раз(а)

[+]


evgenijj пишет:
Lola пишет:

Ведь я так и буду получать последнее значение т.к. предыдушее каждый раз "стирается" при прогоне в цикле нового ряда

PHP:
скопировать код в буфер обмена
  1.  
  2.   while ($row=mysql_fetch_assoc($result))  
  3.   {  
  4.           $user[] = $row;  
  5.   }
  6.  

Учи мат. часть



Здравствуйте Евгений .
1.Я разобрала разницу м/у assign и append-->выполяняет Слияние (конкатенация) как.array_merge() (PHP) но сохраняя при этом ключи.
2.Но я прочитала раздел-массивы и :
[]-->присваивает числовые индексы ???
т.е. я буду закидывать значение по разным индексам массива $user[] каждый ряд $row
а раньше он просто закидывал и опять в тот же индекс $user -->поэтому данные затирались...
................................ ................................ ................................ ........................
НО если это так--> опять вопрос как вывести со смарти? не получется,
да и даже консоль ничего не выводит а ведь должна
хотя бы показать результат запроса --> массив $user???
................................ ................................ ................................ ........................
подскажите,пожалуйста ,в том направлении топаю или нет.
если нет ->опять буду искать-->должна же все-таки додуматься...
Заранее большое спасибо
 
 Top
evgenijj
Отправлено: 26 Июля, 2007 - 13:59:36
Post Id



Участник


Покинул форум
Сообщений всего: 1212
Дата рег-ции: Авг. 2006  
Откуда: Москва


Помог: 10 раз(а)




http://smarty.php.net/manual/ru/...tion.section.php
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. $sql = "SELECT  id, name, email FROM  users";            
  4. $result = mysql_query($sql) or die(mysql_error());
  5.  
  6. while ($row=mysql_fetch_assoc($result))  
  7. {  
  8.   $users[] = $row;  
  9. }
  10. $smarty->assign('users',$users );
  11. ?>
  12.  
  13. {*
  14.    выводим результат запроса к БД в таблицу
  15. *}
  16. <table>
  17. <tr><th>&nbsp;</th><th>Name</th><th>Email</th></tr>
  18. {section name=co loop=$users}
  19.   <tr>
  20.     <td><a href="view.php?id={$users[co].id}">view<a></td>
  21.     <td>{$users[co].name}</td>
  22.     <td>{$users[co].email}</td>
  23.   <tr>
  24. {/section}
  25. </table>
  26.  
 
 Top
Lola
Отправлено: 26 Июля, 2007 - 15:27:02
Post Id


Гость


Покинул форум
Сообщений всего: 85
Дата рег-ции: Июнь 2007  
Откуда: Sachsen .Zwickau


Помог: 0 раз(а)

[+]


evgenijj пишет:
http://smarty.php.net/manual/ru/...tion.section.php
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. $sql = "SELECT  id, name, email FROM  users";            
  4. $result = mysql_query($sql) or die(mysql_error());
  5.  
  6. while ($row=mysql_fetch_assoc($result))  
  7. {  
  8.   $users[] = $row;  
  9. }
  10. $smarty->assign('users',$users );
  11. ?>
  12.  
  13. {*
  14.    выводим результат запроса к БД в таблицу
  15. *}
  16. <table>
  17. <tr><th>&nbsp;</th><th>Name</th><th>Email</th></tr>
  18. {section name=co loop=$users}
  19.   <tr>
  20.     <td><a href="view.php?id={$users[co].id}">view<a></td>
  21.     <td>{$users[co].name}</td>
  22.     <td>{$users[co].email}</td>
  23.   <tr>
  24. {/section}
  25. </table>
  26.  



................................ .....
Сапсибо но я уже нашла ошибкуУлыбка
не хотелось писать она очень глупая --> забрыла убрать алиасы
Спасибо ,ЕВГЕНИЙ ,ЧТО помогаете таким новичкам как я Улыбка
 
 Top
evgenijj
Отправлено: 26 Июля, 2007 - 15:41:24
Post Id



Участник


Покинул форум
Сообщений всего: 1212
Дата рег-ции: Авг. 2006  
Откуда: Москва


Помог: 10 раз(а)




Блин, разговор двух ненормальных. Я уже начинаю сомневаться - в своем ли я уме. Какие алиасы?! Ты о чем вообще? Твоя проблемы была в неправильном сохранении массива $users. Приложенная к твоему сообщению картинка об этом говорит вполне однозначно. А ты тут такую ахинею несешь - волосы дыбом встают.
 
 Top
Lola
Отправлено: 26 Июля, 2007 - 15:44:15
Post Id


Гость


Покинул форум
Сообщений всего: 85
Дата рег-ции: Июнь 2007  
Откуда: Sachsen .Zwickau


Помог: 0 раз(а)

[+]


evgenijj пишет:
Блин, разговор двух ненормальных. Я уже начинаю сомневаться - в своем ли я уме. Какие алиасы?! Ты о чем вообще? Твоя проблемы была в неправильном сохранении массива $users. Приложенная к твоему сообщению картинка об этом говорит вполне однозначно. А ты тут такую ахинею несешь - волосы дыбом встают.


я знаю !!! просто алиасы были со старого кода и сохранились а о них я забыла --> не увидела:
старый код--> начинала с начала чтобы все просмотреть по пути
вот-так ... успокойтесь и не волнуйтесь Улыбка ....
я болше так не буду Улыбка
--> поэтому не хотела говорить об этой ошибке Недовольство, огорчение ведь это действительно не в тему и ГЛУПО!!! SORRY
 
 Top
evgenijj
Отправлено: 26 Июля, 2007 - 15:49:03
Post Id



Участник


Покинул форум
Сообщений всего: 1212
Дата рег-ции: Авг. 2006  
Откуда: Москва


Помог: 10 раз(а)




Lola пишет:

я знаю !!! просто алиасы были со старого кода и сохранились а о них я забыла --> не увидела:
старый код--> начинала с начала чтобы все просмотреть по пути

Слова вроде русские - а в предложения не складываются. Что знаешь? Какой старый код? Ты хоть что-нибудь поняла, из того что я тебе объяснял? Что такое алиасы? Что посмотреть, по какому пути???!!! Ты о чем вообще?

P.S. Завязывать надо общение с начинающими программистами - дак и в дурдом угодить недолго.
 
 Top
Lola
Отправлено: 26 Июля, 2007 - 15:56:23
Post Id


Гость


Покинул форум
Сообщений всего: 85
Дата рег-ции: Июнь 2007  
Откуда: Sachsen .Zwickau


Помог: 0 раз(а)

[+]


evgenijj пишет:
Lola пишет:

я знаю !!! просто алиасы были со старого кода и сохранились а о них я забыла --> не увидела:
старый код--> начинала с начала чтобы все просмотреть по пути

Слова вроде русские - а в предложения не складываются. Что знаешь? Какой старый код? Ты хоть что-нибудь поняла, из того что я тебе объяснял? Что такое алиасы? Что посмотреть, по какому пути???!!! Ты о чем вообще?

P.S. Завязывать надо общение с начинающими программистами - дак и в дурдом угодить недолго.

Я все прекрасно поняла суть ошибки при выводе массива $users всех значений в чем у меня была проблема( not user --> but $user[]) и вы обьяснили я поняла. и сделала а об алиасах забудьте...Вы подсказали и написали я сделала и получилось .Улыбка
P.S:.....не надо так говорить до дурдома вам далеко поверьте - просто вы меня не поняли-
И ВЫ ОЧЕНь НУЖНЫ НЕ НАДО ЗАВЯЗЫВАТь .... ХОРОШО ? ПОЖАЛУЙСТА!!!!
 
 Top
Zeta-johns
Отправлено: 26 Июля, 2007 - 17:19:48
Post Id



Новичок


Покинул форум
Сообщений всего: 12
Дата рег-ции: Июль 2007  
Откуда: Deutschland, Plauen


Помог: 0 раз(а)

[+]


Цитата:
дак и в дурдом угодить недолго.


лучше уж так - чем никак! Ха-ха


-----
Amy Lee ab jetzt in Vogtland
 
 Top
kamikadze
Отправлено: 26 Июля, 2007 - 23:24:29
Post Id



Склонен к самоубийству


Покинул форум
Сообщений всего: 391
Дата рег-ции: Янв. 2007  


Помог: 0 раз(а)




ЧТО ТАКОЙ АЛИАСЫ И С ЧЕМ ИХ ЕДЯТ?
 
 Top
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB