Intereting Posts
Плагин Woocommerce – вложенные продукты для подкатегорий Как показать php-файлы как обычный текст в Apache Тестирование функциональности с помощью тестовой базы данных / данных для PHPUnit PHP автоматически обновляет страницу, если содержимое определенного файла изменилось Окно обновления PHP? эквивалентно перезагрузке страницы F5? Удаление каскада Doctrine не работает с OneToMany и OneToOne Zend Framework 2 – глобальная проверка подлинности с помощью ZFCUser Полный пример автозагрузки композитора? установить переменную сеанса php с помощью ajax / jquery PHP header () не перенаправляет после вызова ajax удалить дочерний узел в XML-файле с помощью php Использование плагина проверки jQuery для проверки того, выбран ли один или несколько флажков (с разными именами) PHP DateTime DST Ошибка MYSQL: предупреждение: mysqli_fetch_assoc () ожидает, что параметр 1 будет mysqli_result, boolean given Вызов неопределенной функции __ () error – phpMyAdmin

PHP-SQL: загруженное изображение, отображаемое как нежелательный текст

Я загрузил изображение и текст непосредственно в таблицу через phpMyAdmin. Однако, когда дело доходит до отображения, изображения отображаются в виде нежелательного текста. В чем может быть проблема? Изображение является относительно небольшим файлом jpg. Вот код:

<?php require_once 'login.php'; $conn = new mysqli($hn, $un, $pw, $db); if($conn->connect_error) die($conn->connect_error); $query = "SELECT * from classics"; $result = $conn->query($query); if(!$result) die($conn->error); $rows = $result->num_rows; for($j=0; $j < $rows; $j++) { $result->data_seek($j); $row=$result->fetch_array(MYSQLI_ASSOC); echo 'Cover:' .$row['sleeve'] .'<br>'; } $result->close(); $conn->close(); ?> 

Что-то вроде этого, так как ваш echo-оператор должен «работать» с вашей текущей реализацией.

 //echo 'Cover:' .$row['sleeve'] .'<br>'; echo '<img src="data:image/jpeg;base64,'.base64_encode( $row['sleeve'] ).'"/>'; 

Однако @Noor является правильным, хранение изображений, подобных этому, не очень эффективно.

Вы делаете это неправильно. Не сохраняйте изображения в базе данных, так как это не очень хорошая практика. Просто сохраните загруженное изображение в каталоге и сохраните путь к этому изображению в базе данных. Это сэкономит вам пространство базы данных и время поиска.

Вот пример кода

 <?php $target_dir = "uploads/"; $target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]); $uploadOk = 1; $imageFileType = pathinfo($target_file,PATHINFO_EXTENSION); // Check if image file is a actual image or fake image if(isset($_POST["submit"])) { $check = getimagesize($_FILES["fileToUpload"]["tmp_name"]); if($check !== false) { echo "File is an image - " . $check["mime"] . "."; $uploadOk = 1; } else { echo "File is not an image."; $uploadOk = 0; } } ?> 

См. http://www.w3schools.com/php/php_file_upload.asp для получения справки.