#php #sql
#php #sql
Вопрос:
Необходимо отобразить следующее:
-
Отображать все элементы определенной структуры
-
Если в sql нет доступных наборов данных, отобразите «нет результата»
Код полностью функционален для первого пункта, но не поддерживает вторую функцию. Большое спасибо за помощь.
//echo $sql;
$data = "";
$ii = 0;
$m = 0;
while($myrow = mysql_fetch_array($result)){
$ii ;
$m ;
if ($m == 1) $data = $data."<div class="page current" id="gallery">";
elseif ($ii == 1) $data = $data."<div class="page" id="gallery">";
$data = $data."<a href="#" title="".$myrow['name']."" class="show_fabric" rel="".$myrow['id'].""><img src="".$image_directory.$myrow['thumbnail']."" width="100 px" height="100 px"><div class="fb_name">".$myrow['name']."</div></a>n";
if ($ii == 10) {
$data = $data."</div>";
$ii = 0;
}
}
if ($ii != 10) {
$data = $data."</div>";
}
if (empty($data)) echo "No result";
else echo $data;
Комментарии:
1. если у вас нет результата и
$ii
не было увеличения, вы, кажется, всегда делаете это,$data = $data."</div>";
что делаетempty($data)
возвратfalse
Ответ №1:
если ($result amp;amp; mysql_num_rows($result)>0) { $data = ""; $ ii = 0; $ m = 0; while($myrow = mysql_fetch_array($result)){ $ii ; $ m ; если ($m == 1) $data = $data."<div class="текущая страница" id= "галерея">"; elseif ($ii == 1) $data = $data."<div class="страница" id="галерея">"; $data = $data."<a href="#" title="".$myrow['name']."" class="show_fabric" rel="".$myrow['id'].""><img src="".$image_directory.$myrow['thumbnail']."" width= "100 пикселей" height = "100 пикселей " ><div class="fb_name">".$myrow['имя']."</div></a>n"; если ($ ii == 10) { $data = $data."</div>"; $ ii = 0; } } если ($ ii != 10) { $data = $data."</div>"; } }else echo ('Нет результата');
Комментарии:
1. Прошу прощения за мое невежество, но я не разработчик. Как это конкретное изменение будет выглядеть в приведенном выше коде? Я не хочу что-то испортить. Спасибо!
2. Я был слишком быстрым 🙂 К сожалению, код работает, если структура недоступна, но не отображает структуры, когда они доступны.
Ответ №2:
if($result)
{
while()
{
-----
--
-
}
}
else
echo "No Result";
Ответ №3:
Вы могли бы использовать следующий измененный код, но он по-прежнему создает новый <div [...] id="gallery">
каждые десять итераций. Обратите внимание, что идентификаторы HTML должны быть уникальными.
if ( ( !$result ) || ( 0 == mysql_num_rows( $result ) ) ) {
echo 'No result';
}
else {
$data = "";
$ii = 0;
$m = 0;
while ( $myrow = mysql_fetch_array( $result ) ) {
$ii ;
$m ;
if ( $m == 1 ) {
$data .= '<div class="page current" id="gallery">';
}
elseif ( $ii == 1 ) {
$data .= '<div class="page" id="gallery">';
}
$data .= '<a href="#" title="' . $myrow['name'] . '" class="show_fabric" rel="' . $myrow['id'] . '"><img src="' . $image_directory . $myrow['thumbnail'] . '" width="100px" height="100px"><div class="fb_name">' . $myrow['name'] . "</div></a>n";
if ( $ii == 10 ) {
$data .= "</div>";
$ii = 0;
}
}
if ( $ii != 10 ) {
$data .= "</div>";
}
echo $data;
}