[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Выбор нужной фотографии
franko
Здраствуйте!

$sql = "SELECT img, id, cat FROM table ORDER by date DESC LIMIT 6";
$result = mysql_query($sql) or die(mysql_error() ."<br/>". $sql);
while ($row = mysql_fetch_assoc($result))
{
echo "<a href='baza_pupil.php?cat=".$row['cat']."'><img src='".$row['img']."'></a><br>";
}


куда бы прицепить сюда id :blink: чтобы выборка шла не только по cat, но и по id, а то выбираются все фотографии из раздела cat. А нужно из cat, но тольку одну фотографию, имеющую свой id.



Спустя 14 минут (18.11.2010 - 18:09) waldicom написал(а):
Видимо сюда:
echo "<a href='baza_pupil.php?cat=".$row['cat']."&id=" . $row['id'] . "'><img src='".$row['img']."'></a><br>";

Спустя 14 минут, 10 секунд (18.11.2010 - 18:23) franko написал(а):
Этот вариант не помог.
$sql = "SELECT img, id, cat FROM table ORDER by date DESC LIMIT 6";
$result = mysql_query($sql) or die(mysql_error() ."<br/>". $sql);
while ($row = mysql_fetch_assoc($result))
{
echo "<a href='baza_pupil.php?cat=".$row['cat']."&id=".$row['id']."'>
<img class='img' src='"
.$row['mg']."'></a><br>";
}

выводятся также все фотографии

Спустя 8 минут, 51 секунда (18.11.2010 - 18:32) Ser18 написал(а):
$id = id который вам нужно

$sql = "SELECT img, id, cat FROM table WHERE id='{$id}' ORDER by date DESC LIMIT 6";

Спустя 12 минут, 17 секунд (18.11.2010 - 18:44) waldicom написал(а):
Цитата (Ser18 @ 18.11.2010 - 17:32)
$id = id который вам нужно

$sql = "SELECT img, id, cat FROM table WHERE id='{$id}' ORDER by date DESC LIMIT 6";

Это врядли, и вот почему:
человек пишет
Цитата
чтобы выборка шла не только по cat, но и по id, а то выбираются все фотографии из раздела cat.

Раз выбираются фотки по разделу, значит где-то есть запрос, в котором есть конструкция вида
... WHERE cat = XX ... 

А так как в вышеприведенном запросе WHERE нет, значит это не тот запрос.

Спустя 2 минуты, 12 секунд (18.11.2010 - 18:47) franko написал(а):
Видно я неправильно понят.
Должны выводиться 6 последних фотографий по дате. Это мы реализовали.

Далее идет ссылка на каждую фотографию
 <a href='baza_pupil.php?cat=".$row['cat']."&id=".$row['id']."'>
<
img class='img' src='".$row['img']."'></a>

кликая на которую должна вывести только эта фотография.
Сейчас выводится фотографии целого каталога (у них одинаковый cat)

Спустя 6 минут, 3 секунды (18.11.2010 - 18:53) kovaldm написал(а):
Значит так:
$query = "SELECT `img` FROM table WHERE `id` = '$_GET['id']'";

получите адрес нужной фотографии.

Спустя 2 минуты, 32 секунды (18.11.2010 - 18:55) franko написал(а):
Это дает ошибку


Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING

Спустя 5 минут, 20 секунд (18.11.2010 - 19:00) kovaldm написал(а):
$query = "SELECT img FROM table WHERE id = '$_GET['id']'";

Спустя 2 минуты, 39 секунд (18.11.2010 - 19:03) franko написал(а):
Не помогло

Спустя 1 минута, 8 секунд (18.11.2010 - 19:04) kovaldm написал(а):
В смысле не помогло, что получилось?

Спустя 1 минута, 45 секунд (18.11.2010 - 19:06) franko написал(а):
таже ошибка

Спустя 5 минут, 31 секунда (18.11.2010 - 19:12) kovaldm написал(а):
$query = "SELECT img FROM table WHERE id = '". $_GET['id'] ."'";

Спустя 11 минут, 11 секунд (18.11.2010 - 19:23) franko написал(а):
я так понимаю что полный запрос выглядит так
$query = "SELECT img, id, cat FROM table WHERE id = '". $_GET['id'] ."'";

Query was empty

Спустя 6 минут, 12 секунд (18.11.2010 - 19:29) Basili4 написал(а):
franko
смотри ниже пишет что запрос пустой. Это значит, что либо переменная затирается либо и используется другая обрати внимание на то что регистр тоже важен.

Спустя 2 минуты, 53 секунды (18.11.2010 - 19:32) kovaldm написал(а):
Зачем id и cat, нужно вытащить из базы путь к файлу, это img, все остальное не нужно, если только не делать картинку ссылкой саму на себя.

Спустя 8 минут, 33 секунды (18.11.2010 - 19:40) kovaldm написал(а):
Может ссылка неправильно формируется?

Спустя 11 секунд (18.11.2010 - 19:41) franko написал(а):
Цитата
Зачем id и cat

cat и id нужно - потом пойдет ссылка фото, которая откроется вместе с описананием фотографии
Здесь нет ошибки?
$query = "SELECT img, id, cat  FROM table WHERE id = '". $_GET['id'] ."'";
$result = mysql_query($sql) or die(mysql_error() ."<br/>". $sql);
while ($row = mysql_fetch_assoc($result))
{
echo "<a href='baza_pupil.php?cat=".$row['cat']."&id=".$row['id']."'><img class='miniimg' src='".$row['img']."'></a><br>";
}

Выходит надпись - Query was empty

Спустя 15 минут, 16 секунд (18.11.2010 - 19:56) kovaldm написал(а):
Чет я не понял.
Вот это
<a href='baza_pupil.php?cat=".$row['cat']."&id=".$row['id']."'><img class='miniimg' src='".$row['img']."'></a>
картинка, которая ссылается на рисунок.

Вот это

id=$row['id']
id картинки.

Вот это
$query = "SELECT img FROM table WHERE id = '". $_GET['id'] ."'";
запрос, который вытаскивает нужную картинку, когда юзер тыкает по ссылке.
Так?

Спустя 4 минуты, 23 секунды (18.11.2010 - 20:00) franko написал(а):
ну вроде так...

Спустя 3 минуты, 9 секунд (18.11.2010 - 20:03) kovaldm написал(а):
Значит, в файле пишете проверку нажата ли ссылка.
Если нажата, то отрабатывает блок

$res = mysql_query("SELECT img FROM table WHERE id = '". $_GET['id'] ."'");
while($row = mysql_fetch_assoc($res))
{
echo '<img src="'. $row['img'] .'">';
}
Получите нужную картинку.

Спустя 15 минут, 11 секунд (18.11.2010 - 20:19) franko написал(а):
не работает!

давайте вернемся к старому варианту. тут все выводится. если к примеру в каталоге - одна фото - одно и выводится. Но если кликнув на фото в каталоге которого 5 фото - то все gznm фотографий выводятся
$sql = "SELECT img, id, cat FROM table ORDER by date DESC LIMIT 6";
$result = mysql_query($sql) or die(mysql_error() ."<br/>". $sql);
while ($row = mysql_fetch_assoc($result)){
echo "<a href='baza_pupil.php?cat=".$row['cat']."&id=".$row['id']."'><img src='".$row['img']."'></a><br>";
}

Спустя 17 минут, 32 секунды (18.11.2010 - 20:36) kovaldm написал(а):
Этот скрипт выводит фотки, отсортированные по дате. В виде ссылок на себя самих.
Если ткнуть по ссылке, то скрипту "baza_pupil.php передастся" переменная 'id', при помощи которой мы вытащим из БД полное имя нужной фотки. Логика ясна?

Спустя 18 минут, 28 секунд (18.11.2010 - 20:55) franko написал(а):
понимаю. но что вот не хотит работать. туды ее сюды. выводятся все фотографии из каталога

Спустя 10 минут, 11 секунд (18.11.2010 - 21:05) kovaldm написал(а):
Вот так работает?
    if(empty($_GET['photo_link']))
{
$sql = "SELECT img, id, cat FROM table ORDER by date DESC LIMIT 6";
$result = mysql_query($sql) or die(mysql_error() ."<br/>". $sql);
while ($row = mysql_fetch_assoc($result))
{
echo '<a href="baza_pupil.php?cat='. $row['cat'] .'&id='. $row['id'] .'&photo_link=1"><img src="'. $row['img'] .'"></a><br>';
}
}

else
{
$res = mysql_query("SELECT img FROM table WHERE id = '". $_GET['id'] ."'");
while($row = mysql_fetch_assoc($res))
{
echo '<img src="'. $row['img'] .'">';
}
}

Спустя 15 минут, 21 секунда (18.11.2010 - 21:20) franko написал(а):
И в этом случае выводится целый каталог

Спустя 5 минут, 10 секунд (18.11.2010 - 21:25) kovaldm написал(а):
В базе у фоток id разные?

Спустя 19 минут, 54 секунды (18.11.2010 - 21:45) franko написал(а):
да разные.

Спустя 4 минуты, 22 секунды (18.11.2010 - 21:49) kovaldm написал(а):
blink.gif
И с переходом по ссылке и без - одно и тоже?
В скрипте есть еще какой-нибудь код, относящийся к выводу этих фотографий?

Спустя 10 часов, 45 минут, 4 секунды (19.11.2010 - 08:35) franko написал(а):
И верно. Вот она проблема. Там есть еще один скрипт в цикле.
baza_pupil.php

На сайте http://www.11klassniki.ru/ в правом меню - фотографии.


$result = mysql_query("SELECT * FROM table WHERE cat='$cat'", $db);
if (mysql_num_rows($result) > 0)
{
$myrow = mysql_fetch_array($result);
do
{
printf ("<h1>%s</h1><p>%s</p>", $myrow["ask"], $myrow["opinion"]);
}
while ($myrow = mysql_fetch_array($result));
}




Спустя 36 минут, 24 секунды (19.11.2010 - 09:11) franko написал(а):
Теперь все работает верно.
Создал baza_pupil_single.php

Вопрос теперь в другом.
http://www.11klassniki.ru/baza_pupil.php?cat=8

Дважды выводится один и тот же вопрос.

$result = mysql_query("SELECT * FROM table WHERE cat='$cat'", $db);
if (!$result)
{
echo "<p>Запрос на выборку данных из базы не прошел. </p>";
exit (mysql_error());
}
if (mysql_num_rows($result) > 0)
{
$myrow = mysql_fetch_array($result);
do
{
printf ("<h1>%s</h1><p>%s</p>", $myrow["ask"], $myrow["opinion"]);
}
while ($myrow = mysql_fetch_array($result));
}

Надо чтобы $myrow["ask" ] выводился только один раз

Спустя 11 часов, 48 минут, 16 секунд (19.11.2010 - 20:59) kovaldm написал(а):
Чет опять вылез этот "do while"...
Подозреваю, что в БД две записи с
cat = $cat
то есть две записи с одинаковым полем 'cat', поэтому и выводится два раза.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.