Heim  >  Artikel  >  Backend-Entwicklung  >  PHP verwendet Blob, um auf Bildinformationen (einschließlich Quellcode) zuzugreifen.

PHP verwendet Blob, um auf Bildinformationen (einschließlich Quellcode) zuzugreifen.

烟雨青岚
烟雨青岚nach vorne
2020-06-13 17:27:113898Durchsuche

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[&#39;userImage&#39;][&#39;tmp_name&#39;])) {
mysql_connect("localhost", "root", "");
mysql_select_db ("phppot_examples");
$imgData =addslashes(file_get_contents($_FILES[&#39;userImage&#39;][&#39;tmp_name&#39;]));
$imageProperties = getimageSize($_FILES[&#39;userImage&#39;][&#39;tmp_name&#39;]);
$sql = "INSERT INTO output_images(imageType ,imageData)
VALUES(&#39;{$imageProperties[&#39;mime&#39;]}&#39;, &#39;{$imgData}&#39;)";
$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

Um das BLOB-Bild im Browser anzuzeigen, müssen wir:


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[&#39;image_id&#39;])) {
$sql = "SELECT imageType,imageData FROM output_images WHERE imageId=" . $_GET[&#39;image_id&#39;];
$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.php




List BLOB Images




<img src="imageView.php?image_id=<?php echo $row["imageId"]; ?>" />

Vielen Dank fürs Lesen, ich hoffe, Sie werden davon profitieren viel.


Originallink: https://blog.csdn.net/u012275531/article/details/1791499

Empfohlenes Tutorial: „

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!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen