Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.11.2011, 20:53   #1
Nebojitel
Пользователь
 
Регистрация: 27.05.2011
Сообщений: 26
Смущение Игнорирует While

Здравствуйте.
Подскажите в чём касяк. For нормально отрабатывает, но в while не заходит. Расставил маячки Echo в коде видно, 4й не выводит.
PHP код:
<?php

//Читаем директорию
 
$dr="images/album/gallery";
 
$ar= array();
 
$dh=opendir($dr);
 while (
$file_d readdir($dh)) 
    if (
$file_d[0] != "."//не выводим вложенные папки
    
{
       
array_push($ar$file_d); //читаем все файлы в директории
    
}
 
closedir($dh);
 
sort($ar);
 
//выводим название галлерей(папок) в меню
 
for($i=0;$i<count($ar);$i++)
 {
        echo 
"<li class='album'>";
        echo 
"<span class='st_link'>".$ar[$i]."<span class='st_arrow_down'></span></span>";
        echo 
"<div class='st_wrapper st_thumbs_wrapper'>";
        echo 
"<div class='st_thumbs'>";
    
//коннект к базе
    
require_once('connectDB.php');
    echo 
"1";
    
//запрос к базе
    
$query 'SELECT `title`, `urlFoto`, `urlPrew` FROM `foto` WHERE NameGallery = "'.$ar[$i].'"';
    echo 
"2";
    
$result mysql_query($query)
         or die(
'query failed');
echo 
"3";
    
//вывод построчно из базы
    
while ($row mysql_fetch_assoc($result))
    {
        echo 
"4";
        
$prew $row['urlPrew'];
        
$urlf $row['urlFoto'];
        
$tit $row['title'];
        
        
// строка вернулась в виде ассоциативного массива
        
echo "<img src='$prew' alt='$urlf' title='$tit'/>";
    }
   
// echo "</div>";
   
echo "5";
        echo 
"</div>";
        echo 
"</div>";
        echo 
"</li>";    
   }
mysql_close($db);
?>
Nebojitel вне форума Ответить с цитированием
Старый 14.11.2011, 21:08   #2
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Значит, ваш запрос не возвращает результатов.
Вместо echo "3"; ставим echo mysql_num_rows($result); - смотрим кол-во строк в результате запроса.

Если их 0 - тогда echo $query; - и смотрим, как сформировался запрос, корректно ли подставилось значение, есть ли такие значения в таблице БД (соответствующие условию WHERE).
Andkorol вне форума Ответить с цитированием
Старый 14.11.2011, 21:15   #3
Nebojitel
Пользователь
 
Регистрация: 27.05.2011
Сообщений: 26
По умолчанию

Цитата:
Сообщение от Andkorol Посмотреть сообщение
Значит, ваш запрос не возвращает результатов.
Вместо echo "3"; ставим echo mysql_num_rows($result); - смотрим кол-во строк в результате запроса.

Если их 0 - тогда echo $query; - и смотрим, как сформировался запрос, корректно ли подставилось значение, есть ли такие значения в таблице БД (соответствующие условию WHERE).
Спасибо!!!)))) Благодарен!
echo mysql_num_rows($result); выдал 0. Посмотрел echo $query; и всё понял, что в бд ручками переименовал название галерей, а папки остались со старыми именами. В этом и была проблема. Спасли, уже тупка началась...
Nebojitel вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
СУММПРОИЗВ не игнорирует при суммировании ошибки Severny Microsoft Office Excel 4 05.04.2011 17:34
Delphi игнорирует параметр SuperDuper Общие вопросы Delphi 6 23.08.2010 21:28
Компилятор игнорирует ошибочный код N1KeL Помощь студентам 8 29.11.2009 21:22
компилятор игнорирует переменные, объясните dextering Общие вопросы Delphi 23 15.06.2009 11:58