Создание перехода по ссылке. Взаимодействие php и mysql.

Pavl

Active Member
Регистрация
28.09.2016
Сообщения
43
Добрый день!
Имеется 2 страницы с кодом.

index.php:

PHP:
<?php
mysql_connect('localhost','root','');
$res = mysql_select_db('images');
//var_dump($res);
$res = mysql_query("SELECT * FROM img ORDER BY id DESC");
//var_dump($res);
while (false !== ($row = mysql_fetch_assoc($res))) {
    echo "<a href='page.php'>$row[name]</a>";
    
    $show_img = base64_encode($row['samfile']);?>
    
   <p><a href='page.php'><img src="data:image/jpeg;base64,<?php echo $show_img ?>"alt="" width="200" hegiht="200"" /> </a></p>
    
<?php   echo '<br>';} ?>
и

page.php:

PHP:
<?php
mysql_connect('localhost','root','');
$res = mysql_select_db('images');
//var_dump($res);
$res = mysql_query("SELECT * FROM img ORDER BY id DESC");
//var_dump($res);
while (false !== ($row = mysql_fetch_assoc($res))) {
    echo "<a href='page.php'>$row[name]</a>";
    
    $show_img = base64_encode($row['samfile']);?>
    
   <p><a href='page.php'><img src="data:image/jpeg;base64,<?php echo $show_img ?>"alt=""/> </a></p>
    
<?php   echo '<br>';} ?>
Идея в том. чтобы при нажатии на уменьшенную копию картинки-ссылки в index.php происходило перенаправление на страницу page.php и, чтобы на page.php выводилось изображение в полную величину.
Так оно и происходит, только нужно, чтобы выводились не сразу все изображения, а по одному.
То есть, нажимаю я, например, на ссылку Chrizant и нужно, чтобы отображалась в полный размер она одна, а не сразу все, как сейчас.
Как это сделать?

БД выглядит так:
База данных images..JPG
 

Volly

Well-Known Member
Регистрация
21.03.2012
Сообщения
782
Можно в файлах к ссылкам на page.php цеплять id картинок:
<p><a href='page.php?id='<?php echo $row['id'] ?>><img ...
а только в файле page.php запрос
SELECT * FROM img ORDER BY id DESC
изменить на
SELECT * FROM img WHERE id = $_GET['id']
Желательно для безопасности предварительно проверять значение $_GET['id'], чтобы там было именно число, а не какая-нибудь бяка.
Ещё в этом случае цикл while можно будет убрать и немного изменить код т. к. из базы будет выбор только одной строки.
И ещё небольшое замечание не по теме.
Строки
<?php echo '<br>';} ?>
изменить на
<?php } ?>
А если br "очень нужен" то добавить его сразу после ... </p><br>
 
  • Like
Реакции: Pavl
Верх Низ