0

Беру значения из таблицы user где login равно кук файлу логина, превращаю в массив. Беру из него значение Ppage(строка) и разбиваю её на массив затем беру из таблицы photo данные где id равно массиву Ppage, кодирую и вывожу значение img. Ошибка HTTP 500

<?php
  $mysql = new mysqli('localhost', 'root', 'root', 'register');
  $cook = $_COOKIE['login'];
  $query = $mysql->query("SELECT * FROM `user` WHERE `login` = $cook");
  while($row = $query->fetch_assoc()){
    $Ppage = str_split($row['Ppage']);
    while($2row = $Ppage) {
    $dm = $mysql->query("SELECT * FROM `photo` WHERE `id`=$2row");
    $show_img = base64_encode($dm['img']);?>
    <img src="data:image/jpeg;base64, <?=$show_img ?>" alt="">
  <?php } } ?>
Redki
  • 1
  • Пожалуйста, уточните вашу конкретную проблему или приведите более подробную информацию о том, что именно вам нужно. В текущем виде сложно понять, что именно вы спрашиваете. – Дух сообщества Dec 03 '21 at 14:50
  • ошибка 500 может быть по многим причинам. Смотрите логи и узнавайте конкретную проблему – ArchDemon Dec 03 '21 at 14:57
  • 2
    для начала у вас сам запрос не выполняется, ибо $cook, вероятно, ожидается строкой и должен быть заключен в кавычки. Но также следует задуматься, что будет, если пользователь подправит куки и впишет туда какое-нить or id=1 order by id limit 1 #. Потом почитать про сессии и не хранить логину в куки, или хоть шифровать их что ли. Затем еще озадачится тем, можно ли выполнять запросы не в цикле а сразу получить данные для всех строк, используя join. Про использование select * тоже подумать, особенно если у вас не одно поле с картинками. да и в целом о том стоит ли хранить картинку в таблице – teran Dec 03 '21 at 14:59
  • 1
  • это не относится к проблеме, скорее всего вы её сами решите, если включите отображение ошибок (ссылка выше), но на будущее, никогда не вставляйте сырые данные запроса в sql - запрос, это потенциальная sql - иньекция (почитать можно тут https://www.php.net/manual/ru/security.database.sql-injection.php) – Денис Dec 03 '21 at 18:10
  • Нельзя называть переменные $2row – u_mulder Dec 03 '21 at 20:07

0 Answers0