The Prophet
Rear Admiral
- Registriert
- Aug. 2001
- Beiträge
- 5.981
Nabend,
ich versuche gerade Images als Binary in eine MySQL DB zu schreiben.
Das DB Schema schaut wie folgt aus:
wurde von phpmyadmin ohne Mucken erstellt.
Um die Bilder einzufügen habe ich folgendes versucht.
Nur leider erhalte ich immer ID=0.
Das PHP Manual meint dazu
Any hints?
ich versuche gerade Images als Binary in eine MySQL DB zu schreiben.
Das DB Schema schaut wie folgt aus:
Code:
CREATE TABLE binary_data (
id INT(4) NOT NULL AUTO_INCREMENT PRIMARY KEY,
description CHAR(50),
bin_data LONGBLOB,
filename CHAR(50),
filesize CHAR(50),
filetype CHAR(50)
);
Um die Bilder einzufügen habe ich folgendes versucht.
PHP:
<html>
<head><title>hmm</title></head>
<body>
<?php
if ($submit) {
$link = mysql_connect('localhost', 'login', 'pw');
if (!$link) {
die('Keine Verbindung möglich: ' . mysql_error());
}
mysql_select_db('binary_data');
$data = addslashes(fread(fopen($form_data, "r"), filesize($form_data)));
mysql_query("INSERT INTO binary_data (description, bindata, filename, filesize, filetype) values ('$form_description', '$data', '$form_data_name', '$form_data_size', '$form_data_type')");
printf("Der zuletzt eingefügte Datensatz hat die ID %d\n", mysql_insert_id());
} else {
?>
<form method="post" action="<?php $PHP_SELF; ?>" enctype="multipart/form-data">
File Description:<br>
<input type="text" name="form_description" size="40">
<input type="hidden" name="MAX_FILE_SIZE" value="1000000">
<br>File to upload/store in database:<br>
<input type="file" name="form_data" size="40">
<p><input type="submit" name="submit" value="submit">
</form>
<?php
}
?>
</body>
</html>
Nur leider erhalte ich immer ID=0.
Das PHP Manual meint dazu
Allerdings hilft mir das auch nicht wirklich weiter. Das es nicht sonderlich sinnvoll ist komplette Images in einer DB zu speichern weiß ich auch allerdings wollte ich das mal testenmysql_insert_id() liefert 0, wenn die vorhergehende Abfrage keinen AUTO_INCREMENT Wert erzeugt hat. Falls Sie den Wert zur späteren Verwendung speichern möchten, stellen Sie sicher, dass Sie mysql_insert_id() direkt nach der Abfrage aufrufen, die einen Wert erzeugt hat.
Any hints?
Zuletzt bearbeitet: