Problem mit fopen

Danke für das nette tutorial aber das funktioniert auch nicht mit file_get_contents() ich werd hier noch kirre wa xD

Hier mal mein code der den eintrag in der DB macht:
Code:
$name = $_FILES['Filedata']['name'];
$tmpName = $_FILES['Filedata']['tmp_name'];
$type = "image/jpeg";
$size = $_FILES['Filedata']['size'];
$content = addslashes(file_get_contents($tmpName));
		
$sql = new sql();		
$sql->query("INSERT INTO bild (id, bild, name, size, type, logo, foreign_id) VALUES ('null', '".$content."','".$name."','".$size."','".$type."','".$logo."','".$id."')");
$sql->closeConnection();

So wenn ich versuche mit file() das komplette array mit implode zu einem string zusammen zufassen dann macht ers auch nicht mehr. Also hier:

Code:
$content = file($tmpName); //geht schreibt ein leeres array in die db

$content = file($tmpName); //geht schreibt nur erste zeile
$content = $content[0];

$content = implode("", file($tmpName)); // geht nicht kein eintrag

Bei file_get_contents auch kein eintrag und bei fopen auch kein eintrag was nu ?

PS: Wie soll das mit readfile gehen ?

Mfg 1uck3r
 
Zuletzt bearbeitet:
Hallo ich bins wieder ich habe gestern nochmal alles mögliche getestet habe mein jetzigen Upload durch den SWFUpload ersetzt http://swfupload.org/. Auch hier wieder das gleiche offline funktioniert der eintrag in die datenbank mit blob daten online nicht so langsam habe ich den eindruck das es ein problem mit den rechten von flash ist oder sowas in der art. Auf jeden fall ist fopen auf dem server zugelassen oder muss ich noch etwas beachten wäre schön wenn hier jemand nochmal hilfe leisten könnte ^^

EDIT:
Jetzt habe ich gerade etwas komisches herausgefunden. Und zwar habe ich jetzt mal eine test.php mit dem Upload aus dem Tutorial von Sven Mintel gemacht. Offline funktionierts Online nicht. Dann habe ich mir mal das $_FILES Array angesehen und etwas seltsames festgestellt. Der Upload funktioniert nur mit einer 0 am ende des tmpnames für den array_key null denn so sieht das $_FILES Array aus.

Code:
Array ( [userfile] => Array ( [name] => Array ( [0] => freakovip.jpg ) [type] => Array ( [0] => image/jpeg ) [tmp_name] => Array ( [0] => /tmp/phpaoLIl8 ) [error] => Array ( [0] => 0 ) [size] => Array ( [0] => 6981 ) ) )

Und Online kann ich mit dem Code die daten in die DB schreiben.
Code:
$fp      = fopen($_FILES['userfile']['tmp_name'][0], 'r');
$content = fread($fp, filesize($_FILES['userfile']['tmp_name'][0]));
$content = addslashes($content);
fclose($fp);

Kann mir das einer erklären ?

PS: Der Code funktioniert aber nicht mehr mit Uploadify für jQuery und auch nicht mit dem SWFUpload ich werd bekloppt.

Mfg 1uck3r
 
Zuletzt bearbeitet:
Der Upload funktioniert nur mit einer 0 am ende des tmpnames für den array_key null denn so sieht das $_FILES Array aus.

Steht am Ende des Namens des von dir verwendeten Upload-Feldes vielleicht folgendes Klammerpaar?
Code:
<input type="file" name="Filedata[]">

Was Flash anbelangt:
Für den Upload, ist da irgendeine Berechtigung des Users vonnöten(Login etc.)
Falls ja: Du musst die nötigen Daten, z.B. die Session-ID, per Flash mitgeben.
 
Zurück