За последние 24 часа нас посетили 22022 программиста и 1681 робот. Сейчас ищут 1612 программистов ...

ссылка для фотографиий

Тема в разделе "Сделайте за меня", создана пользователем qvernaut, 4 авг 2014.

  1. qvernaut

    qvernaut Новичок

    С нами с:
    3 авг 2014
    Сообщения:
    4
    Симпатии:
    0
    Здравствуйте.
    суть в том, что я хочу сделать так ,чтобы при нажатии на любую фотографию из галереи открывалась страница с самой фотографией, где было бы ее описание
    имеется код :
    Код (Text):
    1.  
    2. function get_image($id){
    3.     global $db;
    4. $id = $_GET['id'];
    5. $query = mysql_query('SELECT `description`, `pimage` FROM `images` WHERE `id` = ' . (int) $id);
    6. $row = mysql_fetch_assoc($query);
    7.  
    8. $query || die(mysql_error());
    9. $path_to_image = $_SERVER['DOCUMENT_ROOT'].$row['pimage'];
    10. $description = $row['description'];
    11. }
    который по идеи должен из бд брать id нужной фотографии и ее путь ( pimage)
    еще нужно сделать ссылку для этого всего, что у меня не получается ..
    получилось вот так
    Код (Text):
    1.  
    2. <a href="index.php?id=$id"><img class="front" src="<?=SITE . $dir . $path_to_image . $image['img']?>" alt=""
    3.           WIDTH="294px" HEIGHT="184px"></a>
    но при нажатии на фотографию получается такой адрес http://localhost/gallery/index.php?id=$id
    а надо чтобы вместо $id , было id фотографии
    помогите пожалуйста
     
  2. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.114
    Симпатии:
    1.244
    Адрес:
    там-сям
    по идее этот код берет из таблицы описание и путь. а id он использует, а не берет. понимаешь разницу?
    мысль какая-то незаконченная. в итоге-то что с путем не так?

    замени
    Код (PHP):
    1. "index.php?id=$id"
    на
    Код (PHP):
    1. "index.php?id=<?= $id ?>"
     
  3. qvernaut

    qvernaut Новичок

    С нами с:
    3 авг 2014
    Сообщения:
    4
    Симпатии:
    0
  4. Хыиуду

    Хыиуду Активный пользователь

    С нами с:
    3 июн 2014
    Сообщения:
    618
    Симпатии:
    5
    Значит, у вас id пустой. Потому что из базы не берется.
     
  5. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.114
    Симпатии:
    1.244
    Адрес:
    там-сям
    что-то здесь лишнее, или параметр функции или чтение из $_GET.

    покажи кусок кода где вызывается эта функция.
     
  6. qvernaut

    qvernaut Новичок

    С нами с:
    3 авг 2014
    Сообщения:
    4
    Симпатии:
    0
    я код немного переписал
    Код (Text):
    1. <?php
    2.  $db = mysql_connect ("localhost","root","");
    3.     mysql_select_db ("gallery",$db);
    4. $id = $_GET['id'];
    5. $query = mysql_query('SELECT `description`, `pimage` FROM `images` WHERE `id` = ' . (int) $id);
    6. $row = mysql_fetch_assoc($query);
    7.  
    8.  
    9. $query || die(mysql_error());
    10. $path_to_image = $_SERVER['DOCUMENT_ROOT'].$row['pimage'];
    11. $description = $row['description'];
    12. ?>
    создал отдельный файл show_picture_info.php ( для этого кода)
    и ссылку поменял на
    Код (Text):
    1. <a href="show_picture_info.php?id=<?=$id?>">
    2.         <img class="front" src="<?=SITE . $dir . $path_to_image . $image['img'] . $row['pimage'] . $id?>"
    но ничего не поменялось.
    в базе данных id для фотографий присутствует
    я уже все попробовал, но проблему не найти (

    Добавлено спустя 30 минут 39 секунд:
    и кстати, может ли эта функция
    Код (Text):
    1. function get_images_db($gallery, $start_pos, $perpage){
    2.     global $db;
    3.     $query = "SELECT id, img FROM images WHERE gallery_id = $gallery ORDER BY id DESC LIMIT $start_pos, $perpage";
    4.     $res = mysqli_query($db, $query);
    5.     $images = array();
    6.     while($row = mysqli_fetch_assoc($res)){
    7.         $images[$row['id']] = $row;
    8.     }
    9.     return $images;
    10. }
    Всему этому мешать?

    Добавлено спустя 4 минуты 48 секунд:
    и кстати, эта функция доказательство того, что из бд параметр id нормально берется, т.к. она работает
     
  7. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.114
    Симпатии:
    1.244
    Адрес:
    там-сям
    lol, какие нафиг "доказательства". прекрати! сама твоя тема доказательство, что $id нет там где он должен выводиться.
    смотри в какой последовательности твои кусочки выполняются. и связаны ли они вообще.

    отлаживай свой код:
    http://phpfaq.ru/debug
     
  8. Хыиуду

    Хыиуду Активный пользователь

    С нами с:
    3 июн 2014
    Сообщения:
    618
    Симпатии:
    5
    Ну дык правильно, <a href="show_picture_info.php?id=<?=$id?>"> всегда ссылается на картинку с той ID, которую передали через GET, т.е. которая прямо сейчас отображается. В коде нет нигде получения idшников соседних картинок галереи.
     
  9. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.114
    Симпатии:
    1.244
    Адрес:
    там-сям
    думаешь что-то сейчас отображается? ))) я бы не поручился за это. что-то я склоняюсь к мысли, что все фрагменты надерганы из разных мест + в них спорадически происходят изменения.
     
  10. Хыиуду

    Хыиуду Активный пользователь

    С нами с:
    3 июн 2014
    Сообщения:
    618
    Симпатии:
    5
    Ну, сейчас вышеприведенный код мне по логике напоминает дорожный указатель "Москва - прямо, 0 км.", если его поставить на Красной Площади