Beim Versuch, Bilder mit PHP in eine MySQL-Datenbank hochzuladen, können Fehler auftreten, wenn die Bildspalte in der Datenbank nicht definiert ist als BLOB-Typ. Wenn Sie sicherstellen, dass die Bildspalte als BLOB gekennzeichnet ist, können Binärdaten, einschließlich Bilder, gespeichert werden.
Hier ist ein Beispiel für aktualisierten PHP-Code zum Hochladen von Bildern eine MySQL-Datenbank:
$image = addslashes(file_get_contents($_FILES['image']['tmp_name'])); // SQL Injection defense $image_name = addslashes($_FILES['image']['name']); $sql = "INSERT INTO `product_images` (`id`, `image`, `image_name`) VALUES ('1', '{$image}', '{$image_name}')"; // Execute the query if (!mysql_query($sql)) { echo "An error occurred while uploading the image."; } else { echo "Image uploaded successfully."; }
Um den Bildtyp im HTML-Formular anzugeben, verwenden Sie die enctype-Attribut mit einem Wert von multipart/form-data, wie unten gezeigt:
<form action="insert_product.php" method="POST" enctype="multipart/form-data"> <label>File: </label> <input type="file" name="image"> <input type="submit" value="Upload"> </form>
Das obige ist der detaillierte Inhalt vonWie lade ich Bilder mit PHP in eine MySQL-Datenbank hoch?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!