Heim > Artikel > Backend-Entwicklung > PHP verwendet Blob, um auf Bildinformationen (einschließlich Quellcode) zuzugreifen.
php verwendet Blob, um auf Bildinformationen (einschließlich Quellcode) zuzugreifen
BLOBJa Ein MySQL-Datentyp, der als binäres großes Objekt bezeichnet wird. Wie der Name schon sagt, wird es zum Speichern großer Mengen von String-Daten verwendet, ähnlich den MYSQL-Binär- und VARBINARY-Typen.
MySQL-BLOB-Klassifizierung
Maximale Speicherlänge des MySQL-BLOB-Typs (Byte)
TINYBLOB (1)(2 ^ 8)
blob ((2 ^ 16)1)
MEDIUMBLOB ((2 ^ 24)1)
LONGBLOB ((2 ^ 32)1)
In diesem Artikel In In diesem Tutorial lernen wir, wie man MySQL-BLOB-Felder mit PHP einfügt und liest.
(PS: T Nice PHP Q Buckle: 276167802, Verifizierung: csl)
Zuerst müssen wir eine MySQL-Tabelle mit einem BLOB-Feld erstellen .
CREATE TABLE IF NOT EXISTS `output_images` ( `imageId` tinyint(3) NOT NULL AUTO_INCREMENT, `imageType` varchar(25) NOT NULL DEFAULT '', `imageData` mediumblob NOT NULL, PRIMARY KEY (`imageId`) )
Daten einfügen
Bildinformationen in das MySQL-BLOB-Feld einfügen.
1. Bilddatei hochladen.
2. Bildattribute abrufen (Bilddaten, Bildtyp usw.)
3. Fügen Sie die Bilddatei in BLOB ein.
PHP-Implementierungsskript:
imageUpload.php
<?php if(count($_FILES) > 0) { if(is_uploaded_file($_FILES['userImage']['tmp_name'])) { mysql_connect("localhost", "root", ""); mysql_select_db ("phppot_examples"); $imgData =addslashes(file_get_contents($_FILES['userImage']['tmp_name'])); $imageProperties = getimageSize($_FILES['userImage']['tmp_name']); $sql = "INSERT INTO output_images(imageType ,imageData) VALUES('{$imageProperties['mime']}', '{$imgData}')"; $current_id = mysql_query($sql) or die("<b>Error:</b> Problem on Image Insert<br/>" . mysql_error()); if(isset($current_id)) { header("Location: listImages.php"); }}} ?> <HTML> <HEAD> <TITLE>Upload Image to MySQL BLOB</TITLE> <link href="imageStyles.css" rel="stylesheet" type="text/css" /> </HEAD> <BODY> <form name="frmImage" enctype="multipart/form-data" action="" method="post" class="frmImageUpload"> <label>Upload Image File:</label><br/> <input name="userImage" type="file" class="inputFile" /> <input type="submit" value="Submit" class="btnSubmit" /> </form> </div> </BODY> </HTML>
Nach der Ausführung dieses Skripts wird das Upload-Formular wie folgt angezeigt:
Bild anzeigen
1 , Erhalten Sie Bilddaten und geben Sie den Typ vom MySQL BLOB ein
2. Stellen Sie den Typ mit der PHP-Funktion header() auf Bild (Bild/JPG, Bild/Gif, …) ein.
3. Geben Sie den Bildinhalt aus.
imageView.php <?php $conn = mysql_connect("localhost", "root", ""); mysql_select_db("phppot_examples") or die(mysql_error()); if(isset($_GET['image_id'])) { $sql = "SELECT imageType,imageData FROM output_images WHERE imageId=" . $_GET['image_id']; $result = mysql_query("$sql") or die("<b>Error:</b> Problem on Retrieving Image BLOB<br/>" . mysql_error()); $row = mysql_fetch_array($result); header("Content-type: " . $row["imageType"]); echo $row["imageData"]; } mysql_close($conn); ?>Der obige PHP-Code zeigt das im MySQL BLOB gespeicherte Bild an. Vom HTML-Bild-Tag aus können wir auf diese PHP-Datei mit der entsprechenden image_id als Parameter verweisen. Zum Beispiel:
<img src="imageView.php?image_id=<?php echo $row["imageId"]; ?>" />
Der fertige Code lautet wie folgt:
listImages.phpVielen Dank fürs Lesen, ich hoffe, Sie werden davon profitieren viel.List BLOB Images <img src="imageView.php?image_id=<?php echo $row["imageId"]; ?>" />
PHP-Tutorial“
Das obige ist der detaillierte Inhalt vonPHP verwendet Blob, um auf Bildinformationen (einschließlich Quellcode) zuzugreifen.. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!