2016-11-30 2 views
0

Ich habe eine Tabelle namens Bilder mit ID (A_I) und Bild (LONGBLOB) Spalten. Ich habe andere Antworten gesehen, aber es funktioniert nicht für mich. Ich sollte erwähnen, dass ich XAMPP benutze. Wenn ich den vollständigen PC-Dateipfad verwende, werden Zeichen entkernt, weil '\' verwendet wird. Könnte mir jemand in die richtige Richtung zeigen?Bild in MySQL-Datenbank mit PHP einfügen

<?PHP 
$A = "localhost"; // Server Name 
$B = "root";  // MySQL Username 
$C = "";   // MySQL Password 
$D = "sql";  // Database 

$CONNECT = new mysqli($A, $B, $C, $D); 

if ($CONNECT->connect_error) { 
    die("Connection Failed"); 
} 

echo "Connected"; 

$SQL = "INSERT INTO Images (ID, Image) VALUES (1,LOAD_FILE('1.jpg'))"; 

if (mysqli_query($CONNECT, $SQL)) { 
    echo "Image Sent"; 
} else { 
    echo "Error Sending Image"; 
} 
?> 
+0

Sie müssen den vollständigen Pfad verwenden. Wie geben Sie den Dateinamen ein, wenn die Schrägstriche nicht angezeigt werden? – aynber

+0

Der vollständige Pfad sieht so aus und in meinen Editoren ändert sich die Farbe des '\' und des Zeichens danach. $ SQL = "INSERT INTO-Bilder (ID, Bild) VALUES (1, LOAD_FILE ('C: \ xampp \ htdocs \ 1.jpg'))"; –

+0

Den Editor ignorieren oder die Anführungszeichen ändern. Oder besser noch, verwenden Sie vorbereitete Anweisungen und bind_param, wodurch alle Probleme mit Zitaten/Flüchten eliminiert werden. – aynber

Antwort

0

können Sie \ char entkommen, indem \ wie folgt zu schreiben:

$sql = "INSERT INTO Images (ID, Image) VALUES (1,LOAD_FILE('C:\\xampp\\htdocs\\1.jpg'))"; 
+0

Gibt mir immer noch einen Fehler. :/ –

+0

Ist es richtiger Pfad, bist du sicher? –

+0

Ja, da bin ich mir sicher. Ich habe es auch mit einem anderen Bild versucht, funktioniert nicht. Ich habe auch eine neue Tabelle erstellt, basierend auf einem Tutorial bis ins Detail und es funktioniert nicht. –