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 :: Вопрос по коду PHP

 PHP.SU

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


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

> Без описания
A320_Pilot
Отправлено: 21 Марта, 2016 - 22:08:12
Post Id



Гость


Покинул форум
Сообщений всего: 70
Дата рег-ции: Сент. 2012  
Откуда: Россия, Москва


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




Всем добрый вечер!
Вот вывод из 2 таблиц делаю, в каждой таблице по 2-3 записи, но выводится только одна, в чём дело, подскажите!
Заранее спасибо, вот код:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. require_once("/engine/mysql.php");
  3. require_once("/engine/tpl.php");
  4. //Подключаем шаблонизатор
  5. $tpl = new Template;
  6. $tpl->dir = 'template/';
  7. $tpl->load_template('main.html');
  8. $tpl->set('{title}', 'Кованый дизайн');
  9. $tpl->set('{url}', 'http://localhost');
  10. $tpl->set('{url_tpl}', 'http://localhost/template/');
  11. //Настройка вывода новостей
  12. $result = mysql_query("SELECT * FROM news") or die (mysql_error());
  13. if(mysql_num_rows($result) > 0) {
  14. while($data = mysql_fetch_array($result)) {
  15. $news1 = $data['name'];
  16. $news2 = $data['text'];
  17. $tpl->set('{news1}', $news1);
  18. $tpl->set('{news2}', $news2);
  19. } } else {
  20.         $tpl->set('{news1}', "");
  21.         $tpl->set('{news2}', "В данный момент новостей нету!");
  22. }
  23. //Настройка вывода лучших изделий
  24. $result = mysql_query("SELECT * FROM lr") or die (mysql_error());
  25. if(mysql_num_rows($result) > 0) {
  26. while($data1 = mysql_fetch_array($result)) {
  27. $l1 = $data1['name'];
  28. $l2 = $data1['foto'];
  29. $l3 = $data1['text'];
  30. $tpl->set('{lr}', '<li><a href="">'.$l1.'</a>
  31.          <img src="'.$l2.'" alt="">
  32.          <p>'.$l3.'</p>
  33.        </li>');
  34. } } else {
  35.         $tpl->set('{lr}', "В данный момент лучших работ нет!");
  36. }
  37. $tpl->compile('main');
  38. eval (' ?' . '>' . $tpl->result['main'] . '<' . '?php ');
  39. $tpl->global_clear();
  40. ?>
 
 Top
siberian
Отправлено: 24 Марта, 2016 - 16:02:01
Post Id



Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Июнь 2011  


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




Бывает что запрос перекрывает другой - и сбрасывается цикл
Попробуйте mysql_fetch_assoc
(Добавление)
siberian пишет:
Бывает что запрос перекрывает другой - и сбрасывается цикл
Попробуйте mysql_fetch_assoc


[Всё очень тупо идите по вышестоящим конструкциям и делайте вывод print_r() ]
 
 Top
A320_Pilot
Отправлено: 25 Марта, 2016 - 12:48:39
Post Id



Гость


Покинул форум
Сообщений всего: 70
Дата рег-ции: Сент. 2012  
Откуда: Россия, Москва


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




Вот, и опять же, выводится только последняя запись из БД, хоть убей, незнаю что делать!
Проверьте плиз!
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. //Подключение файла настроек базы данных
  3. require_once("./engine/mysql.php");
  4. require_once("./engine/tpl.php");
  5. //Подключаем шаблонизатор
  6. $tpl = new Template;
  7. //Путь к шаблону сайта
  8. $tpl->dir =  'template/';
  9. //Подключаем основной каркас сайта
  10. $tpl->load_template('news.html');
  11. //Настройка вывода лучших изделий
  12. require_once("/rb.php");
  13. //Настраиваем переменные
  14. $tpl->set('{title}', 'Кованый дизайн');
  15. $tpl->set('{url}', 'http://localhost');
  16. $tpl->set('{url_tpl}', 'http://localhost/template/');
  17. //Настройка вывода новостей
  18. $result = mysql_query("SELECT * FROM news") or die (mysql_error());
  19. $num_rows1 = mysql_num_rows($result);
  20. if(mysql_num_rows($result) > 0) {
  21.     while($data = mysql_fetch_assoc($result)) {
  22.         $news = array(
  23.         '{id}'                  => $data['id'],
  24.         '{news1}'               => $data['name'],
  25.         '{news2}'               => $data['text'],
  26.         '{num_rows1}'   => $num_rows1,
  27.         );
  28.         $tpl->set('', $news);
  29.     }
  30. } else {
  31.     $tpl->set('{id}', "");
  32.     $tpl->set('{news1}', "");
  33.     $tpl->set('{news2}', "В данный момент новостей нету или данный блок временно отключен!");
  34. }
  35. //Компилируем шаблон
  36. $tpl->compile('main');
  37. echo $tpl->result['main'];
  38. $tpl->global_clear();
  39. ?>


Отредактировано модератором: Мелкий, 25 Марта, 2016 - 13:15:54
поправил отступы
 
 Top
3d_killer
Отправлено: 25 Марта, 2016 - 12:54:02
Post Id



Участник


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


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




 
My status
 Top
A320_Pilot
Отправлено: 25 Марта, 2016 - 12:55:16
Post Id



Гость


Покинул форум
Сообщений всего: 70
Дата рег-ции: Сент. 2012  
Откуда: Россия, Москва


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




3d_killer пишет:

Одна фигня, опять только последняя выводится
 
 Top
3d_killer
Отправлено: 25 Марта, 2016 - 12:57:07
Post Id



Участник


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


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




после while
var_dump($news);
что говорит?
 
My status
 Top
A320_Pilot
Отправлено: 25 Марта, 2016 - 12:58:29
Post Id



Гость


Покинул форум
Сообщений всего: 70
Дата рег-ции: Сент. 2012  
Откуда: Россия, Москва


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




3d_killer пишет:
после while
var_dump($news);
что говорит?

CODE (htmlphp):
скопировать код в буфер обмена
  1. NULL array(1) { [0]=> array(4) { ["{id}"]=> string(1) "1" ["{news1}"]=> string(32) "Добро пожаловать!" ["{news2}"]=> string(2334) "
  2. Художественная ковка… Многие, наверняка, слышали такое определение архитектуры и скульптуры: «Музыка, застывшая в камне». Про произведения кузнечного искусства можно сказать так же: это красота и музыка, застывшие в металле. Ведь у металла есть своя красота, поэзия, выражающаяся в искусстве ковки.
  3. Казалось бы, металл – это нечто тяжеловесное, воплощение грубой красоты первозданной стихии. Конечно есть в кузнечном искусстве и такой «брутальный» стиль красоты. Но металл может быть и тончайшим выражением красоты живой природы, окружающей нас. Искусный мастер может воплотить в металле многое: и тяжёлые основательные формы, и красоту нежного полевого цветка.
  4. Именно поэтому кованые изделия так идеально сочетаются с декором сада или загородного дома. Тенистый сад, окружённый тонким кружевом кованой изгороди… Уютная ажурная беседка из тонких переплетений металлического кружева, спрятавшаяся в таинственной глубине сада… Ажурное кружево пергол, опутанных зелёным плющом… Разве в этом нет красоты и поэзии, гармонии живой природы и творения человеческих рук? А убранство дома, в котором использованы изделия кузнечного искусства, всегда создаёт представление об изысканности и вкусе хозяев жилища, создаёт ареол солидности, богатства и роскоши дома.
  5. " ["{num_rows1}"]=> int(3) } } array(2) { [0]=> array(4) { ["{id}"]=> string(1) "1" ["{news1}"]=> string(32) "Добро пожаловать!" ["{news2}"]=> string(2334) "
  6. Художественная ковка… Многие, наверняка, слышали такое определение архитектуры и скульптуры: «Музыка, застывшая в камне». Про произведения кузнечного искусства можно сказать так же: это красота и музыка, застывшие в металле. Ведь у металла есть своя красота, поэзия, выражающаяся в искусстве ковки.
  7. Казалось бы, металл – это нечто тяжеловесное, воплощение грубой красоты первозданной стихии. Конечно есть в кузнечном искусстве и такой «брутальный» стиль красоты. Но металл может быть и тончайшим выражением красоты живой природы, окружающей нас. Искусный мастер может воплотить в металле многое: и тяжёлые основательные формы, и красоту нежного полевого цветка.
  8. Именно поэтому кованые изделия так идеально сочетаются с декором сада или загородного дома. Тенистый сад, окружённый тонким кружевом кованой изгороди… Уютная ажурная беседка из тонких переплетений металлического кружева, спрятавшаяся в таинственной глубине сада… Ажурное кружево пергол, опутанных зелёным плющом… Разве в этом нет красоты и поэзии, гармонии живой природы и творения человеческих рук? А убранство дома, в котором использованы изделия кузнечного искусства, всегда создаёт представление об изысканности и вкусе хозяев жилища, создаёт ареол солидности, богатства и роскоши дома.
  9. " ["{num_rows1}"]=> int(3) } [1]=> array(4) { ["{id}"]=> string(1) "2" ["{news1}"]=> string(8) "Тест" ["{news2}"]=> string(8) "Тест" ["{num_rows1}"]=> int(3) } }
 
 Top
3d_killer
Отправлено: 25 Марта, 2016 - 12:59:55
Post Id



Участник


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


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




то есть в массиве все есть, значит смотрите в шаблонизаторе не правильно параметры ему передаете, то есть тут $tpl->set('', $news);
 
My status
 Top
A320_Pilot
Отправлено: 25 Марта, 2016 - 13:00:54
Post Id



Гость


Покинул форум
Сообщений всего: 70
Дата рег-ции: Сент. 2012  
Откуда: Россия, Москва


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




3d_killer пишет:
то есть в массиве все есть, значит смотрите в шаблонизаторе не правильно параметры ему передаете, то есть тут $tpl->set('', $news);

Если честно, даже не понимаю, вроде всё верно
 
 Top
3d_killer
Отправлено: 25 Марта, 2016 - 13:01:13
Post Id



Участник


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


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




или нет это и есть одна запись?

(Отредактировано автором: 25 Марта, 2016 - 13:01:29)

 
My status
 Top
A320_Pilot
Отправлено: 25 Марта, 2016 - 13:02:05
Post Id



Гость


Покинул форум
Сообщений всего: 70
Дата рег-ции: Сент. 2012  
Откуда: Россия, Москва


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




3d_killer пишет:
или нет это и есть одна запись?

Не понял?
 
 Top
3d_killer
Отправлено: 25 Марта, 2016 - 13:02:47
Post Id



Участник


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


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





что покажет?
 
My status
 Top
A320_Pilot
Отправлено: 25 Марта, 2016 - 13:03:45
Post Id



Гость


Покинул форум
Сообщений всего: 70
Дата рег-ции: Сент. 2012  
Откуда: Россия, Москва


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




3d_killer пишет:
что покажет?

 
 Top
3d_killer
Отправлено: 25 Марта, 2016 - 13:06:23
Post Id



Участник


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


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




3 записи значит все же неправильно шаблонизатору параметры передаете
(Добавление)
или он сам компилит неверно
 
My status
 Top
A320_Pilot
Отправлено: 25 Марта, 2016 - 13:06:57
Post Id



Гость


Покинул форум
Сообщений всего: 70
Дата рег-ции: Сент. 2012  
Откуда: Россия, Москва


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




3d_killer пишет:
3 записи значит все же неправильно шаблонизатору параметры передаете

А где там не правильно?
Я просто не могу найти ошибку
(Добавление)
3d_killer пишет:
3 записи значит все же неправильно шаблонизатору параметры передаете
(Добавление)
или он сам компилит неверно

Можете помочь?
А то я в тупике
 
 Top
Страниц (5): [1] 2 3 4 5 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Напишите за меня, пожалуйста »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB