|
|
|
|
|
для: heed
(19.08.2009 в 18:57)
| | Решил проблему :) Что значит пойти подышать свежим воздухом. Проблема была в том что не поместил в цикл, потом если поместить в цикл, то нужно без формы, ибо когда прокутит в цикле жаба скрипт откажется открывать форму и тд..Вобщем привожу изменения :)
Было:
$res2 = mysql_query("SELECT * FROM `".PREFIX."dphoto` WHERE id_category = ".$catrow['id']."")
or die ("Ошибка запроса №2 : magazine/magazine.php" . mysql_error());
while($catrow2 = mysql_fetch_assoc($res2))
{
$photo .= "<tr>";
$photo .= "<td>";
$photo .= $catrow2['dphoto'];
$photo .= "</td>";
$photo .= "</tr>";
}
$goods .= "<form action='' method='post' id='albom".$b."' style='display:none'>
<table align='left' style='margin-top:5px' border='0' cellspacing='0' cellpadding='0'>".$photo."</table>
</form>";
|
Стало:
$goods .= "<form action='' method='post' id='albom".$b."' style='display:none'><table align='left' style='margin-top:5px' border='0' cellspacing='0' cellpadding='0'>";
$res2 = mysql_query("SELECT * FROM `".PREFIX."dphoto` WHERE id_category = ".$catrow['id']."")
or die ("Ошибка запроса №2 : magazine/magazine.php" . mysql_error());
$catrow2 = mysql_fetch_array($res2);
if($catrow2['dphoto'] == "")
{
$goods .= "<tr>";
$goods .= "<td>";
$goods .= "Дополнительные фотографии отсутствуют.";
$goods .= "</td>";
$goods .= "</tr>";
}
else
{
$res3 = mysql_query("SELECT * FROM `".PREFIX."dphoto` WHERE id_category = ".$catrow['id']."")
or die ("Ошибка запроса №3 : magazine/magazine.php" . mysql_error());
while($catrow3 = mysql_fetch_assoc($res3))
{
$goods .= "<tr>";
$goods .= "<td>";
$goods .= $catrow3['dphoto'];
$goods .= "</td>";
$goods .= "</tr>";
}
}
$goods .= "</table></form>";
|
| |
|
|
|
|
|
|
|
для: TetRiska
(19.08.2009 в 18:14)
| | Description
int mysql_num_rows ( resource $result )
Retrieves the number of rows from a result set. This command is only valid for statements like SELECT or SHOW that return an actual result set. To retrieve the number of rows affected by a INSERT, UPDATE, REPLACE or DELETE query, use mysql_affected_rows().
Parameters
result
The result resource that is being evaluated. This result comes from a call to mysql_query().
Return Values
The number of rows in a result set on success, or FALSE on failure.
Examples
Example #1 mysql_num_rows() example
<?php
$link = mysql_connect("localhost", "mysql_user", "mysql_password");
mysql_select_db("database", $link);
$result = mysql_query("SELECT * FROM table1", $link);
$num_rows = mysql_num_rows($result);
echo "$num_rows Rows\n";
?>
|
| |
|
|
|
|
|
|
|
для: heed
(19.08.2009 в 17:56)
| | >чтото както не логично,
>>для первого изделия есть доп. картинки, а для других нету (в базе), но выводить для всех трех изделий доп. картинки первого
>
>наверное перед вторым циклом нужно проверить mysql_num_rows()
> если 0, не делать $photo ='';
>и не запускать цикл while($catrow2 = mysql_fetch_assoc($res2))
>и будет использоваться старое $photo , даже если это пустая переменная
>
>. если запрос вернул не 0 записей , делать $photo =''; и запускать цикл
>//не увидел в коде тега <img> для которого это $catrow2['dphoto']
mysql_num_rows() - т.е. есть ли фотки для определенного изделия? можно поподробней?
насчет того что не увидели img пока не столь важно :) мне достаточно того что выводит пути к рисункам везде :( | |
|
|
|
|
|
|
|
для: TetRiska
(19.08.2009 в 17:02)
| | чтото както не логично,
>для первого изделия есть доп. картинки, а для других нету (в базе), но выводить для всех трех изделий доп. картинки первого
наверное перед вторым циклом нужно проверить mysql_num_rows()
если 0, не делать $photo ='';
и не запускать цикл while($catrow2 = mysql_fetch_assoc($res2))
и будет использоваться старое $photo , даже если это пустая переменная
. если запрос вернул не 0 записей , делать $photo =''; и запускать цикл
//не увидел в коде тега <img> для которого это $catrow2['dphoto'] | |
|
|
|
|
 7.3 Кб |
|
| Есть таблица, которая циклически выводиться, в ней отображаются краткие х-ки изделия...Ниже есть ссылки по которым мы можем отобразить доп. формы: заказать, альбом, комменты. Проблема в отображении всех доп. картинок в альбоме (с комментами аналогично). Т.е. для первого изделия есть доп. картинки, а для других нету (в базе), но выводить для всех трех изделий доп. картинки первого. Привожу пример кода и ссылку на сайт, где в теством режиме можно увидить работу. Прошу помочь разобраться.
Ссылка на сайт - http://furmanidpua.s13.yourdomain.com.ua/magazine
Приведу структуру БД, с теми участками, с которыми идет работа:
CREATE TABLE `furmani_category` (
`id` int(5) NOT NULL auto_increment,
`id_catalog` int(3) NOT NULL,
`photo` varchar(100) NOT NULL,
`photo_b` varchar(100) NOT NULL,
`title` varchar(100) NOT NULL,
`text` text NOT NULL,
`presence` int(1) default NULL,
`price` int(4) default NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 AUTO_INCREMENT=5 ;
INSERT INTO `furmani_category` VALUES (1, 15, '/uploads/catalog/15/1/thumb/1.jpg', '/uploads/catalog
/15/1/1.jpg', 'Красный лаковый пояс', 'Изделие изготовлено из высококачественной кожи. На пояс
нанесен узор красного цвета, что придает поясу элегантности. Размеры пояса 120см х 15см.', 0, 1159);
INSERT INTO `furmani_category` VALUES (2, 15, '/uploads/catalog/15/2/thumb/1.jpg', '/uploads/catalog
/15/2/1.jpg', 'Коричневый пояс', '', 0, 1502);
INSERT INTO `furmani_category` VALUES (3, 15, '/uploads/catalog/15/3/thumb/1.jpg', '/uploads/catalog
/15/3/1.jpg', 'Белый лаковый пояс', '', 1, 953);
|
CREATE TABLE `furmani_dphoto` (
`id` int(11) NOT NULL auto_increment,
`id_category` int(5) NOT NULL,
`dphoto` varchar(100) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ;
INSERT INTO `furmani_dphoto` VALUES (1, 1, '/uploads/catalog/15/1/thumb/photo_1.jpg');
INSERT INTO `furmani_dphoto` VALUES (2, 1, '/uploads/catalog/15/1/thumb/photo_2.jpg');
INSERT INTO `furmani_dphoto` VALUES (3, 1, '/uploads/catalog/15/1/thumb/photo_3.jpg');
|
| |
|
|
| |
|