Webstatt.org - Community seit 2006 - 2012 (2024?)

Bild hochlade und Thumbnail problem

user-139
05.04.2007 13:46

hab hier ein problem, und zwar , die bilder lassen sich hochladen, allerdings sobald ich den code mit dem thumbnail erstellen dazunehme, läd es mir nurnoch 1 bild hoch,.
hat da jemand ne idee?
			foreach ($_FILES["pictures"]["error"] as $key => $error) {
$zufall = md5( ((time()*rand())/2) );
$zufall_kurz = substr($zufall, 0, 7);
if (move_uploaded_file($_FILES["pictures"]["tmp_name"][$key],$upload_dir.$_FILES["pictures"]["name"][$key])) {
$size = $_FILES['pictures']['size'][$key]; // Größe der Datei
$type = $_FILES['pictures']['type'][$key]; // Der MIME Type der Datei
###bilder überprüfen!
$endung = substr($_FILES["pictures"]["name"][$key], -4);
rename($upload_dir.$_FILES["pictures"]["name"][$key],$upload_dir.$zufall_kurz.$endung);
$dateinamen[] = $zufall_kurz.$endung;
###Bild kopieren um Thumbnail zu erstellen!

}##ende if moved
###neu dazugesetzt wegen bildbverkleineurung
if( !@copy($upload_dir.$zufall_kurz.$endung, $upload_dir."t_" .$zufall_kurz.$endung) ) {
echo 'Konnte die Thumbnail-Datei nicht kopieren!'."<br/>";
} else {
BildScale($upload_dir."t_" .$zufall_kurz.$endung, $t_width);
}
@chmod($upload_dir.$zufall_kurz.$endung, 0755 );
@chmod($upload_dir."t_" .$zufall_kurz.$endung, 0755 );
####
}

OS: Windows XP CPU: AMD Athlon XP 3200+ RAM: 512MB DDR PC3200 (Dual Channel) Mainboard: MSI K7n2 Delta-L HDD: 80GB WD Graka:Radeon 9600 Pro =>Alekeijer Straussbuwe
user-139
23.04.2007 13:23

mhh also mal ganz langsam und ausführlich , so lade ich bilder hoch (5 stüc die sich in nem array berinden),.
			foreach ($_FILES["pictures"]["error"] as $key => $error) {
$zufall = md5( ((time()*rand())/2) );
$zufall_kurz = substr($zufall, 0, 7);
if (move_uploaded_file($_FILES["pictures"]["tmp_name"][$key],$upload_dir.$_FILES["pictures"]["name"][$key])) {
$size = $_FILES['pictures']['size'][$key]; // Größe der Datei
$type = $_FILES['pictures']['type'][$key]; // Der MIME Type der Datei
###bilder überprüfen!
$endung = substr($_FILES["pictures"]["name"][$key], -4);
rename($upload_dir.$_FILES["pictures"]["name"][$key],$upload_dir.$zufall_kurz.$endung);
$dateinamen[] = $zufall_kurz.$endung;
###Bild kopieren um Thumbnail zu erstellen!

}##ende if moved

OS: Windows XP CPU: AMD Athlon XP 3200+ RAM: 512MB DDR PC3200 (Dual Channel) Mainboard: MSI K7n2 Delta-L HDD: 80GB WD Graka:Radeon 9600 Pro =>Alekeijer Straussbuwe
user-307
24.04.2007 07:42

Hm, also der hier angegebene Code funktioniert bei mir.
Zeig mal deine BildScale() Funktion. Vielleicht verursacht die das Problem.

Ach ja! Und setz mal an den Bereich zwischen der zweiten und der vorletzten Zeile in...
if($error == 0) { ... }
...damit er kein Fehler wirft wenn man z.B. nur drei Dateien hochlädt.

.., Spark
user-139
24.04.2007 15:47

also bei mir funktioniert es mittlerweile auch , irgendwie klappte etwas mit der max_filesize nicht,.
naja muss jetzt nurnoch die bilder wenn sie größer als 1024 px sind verkleinern auf 1024px, und dann ists fertig,. -endlich-
achso weiss jemand wie ich es geschikt anstellen kann ?

OS: Windows XP CPU: AMD Athlon XP 3200+ RAM: 512MB DDR PC3200 (Dual Channel) Mainboard: MSI K7n2 Delta-L HDD: 80GB WD Graka:Radeon 9600 Pro =>Alekeijer Straussbuwe
user-307
24.04.2007 20:50

Mit getimagesize() prüfen und dann ggf. wie bei den Thumbs verkleinern.

.., Spark
user-139
25.04.2007 15:32

jo so hab ich es auch gemacht und es funktioniert!

OS: Windows XP CPU: AMD Athlon XP 3200+ RAM: 512MB DDR PC3200 (Dual Channel) Mainboard: MSI K7n2 Delta-L HDD: 80GB WD Graka:Radeon 9600 Pro =>Alekeijer Straussbuwe
user-139
25.04.2007 19:38

so auf meinem lokalserver funzt es nun wunderbar , aufem webserver bekomme ich allerding beim bildupload diesen fehler!
Warning: move_uploaded_file(/www/htdocs/w007506c/bonze/admin/uploaded/SP_A0090.jpg) [function.move-uploaded-file]: failed to open stream: No such file or directory in /www/htdocs/w007506c/bonze/admin/pages/edit.php on line 251

Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/phpp6PlBO' to '/www/htdocs/w007506c/bonze/admin/uploaded/SP_A0090.jpg' in /www/htdocs/w007506c/bonze/admin/pages/edit.php on line 251

OS: Windows XP CPU: AMD Athlon XP 3200+ RAM: 512MB DDR PC3200 (Dual Channel) Mainboard: MSI K7n2 Delta-L HDD: 80GB WD Graka:Radeon 9600 Pro =>Alekeijer Straussbuwe
Avatar user-236
25.04.2007 19:53

erhältst du error 500 ?

signature in progress
user-139
25.04.2007 20:24

es passiert einfach garnix,.also es läd die dateien hoch und schreibt den inhalt der eingabefelder in die db , die bilder werden abetr nicht in meinem hochgeladenen bilder ordner verschoben,.

OS: Windows XP CPU: AMD Athlon XP 3200+ RAM: 512MB DDR PC3200 (Dual Channel) Mainboard: MSI K7n2 Delta-L HDD: 80GB WD Graka:Radeon 9600 Pro =>Alekeijer Straussbuwe
user-307
25.04.2007 20:25

Hat dein upload Verzeichnis chmod 777?

.., Spark
user-139
26.04.2007 09:38

ja, ..
beim tmp ka da ich ja keinen zugriff hab!
kann es auch am hoster liegen?
naja bin bei all-inkl.com , sind ja so nicht schlecht,.


wie bekomme ich den tmp-pfad raus?
ich glaub den muss ich noch angeben!

OS: Windows XP CPU: AMD Athlon XP 3200+ RAM: 512MB DDR PC3200 (Dual Channel) Mainboard: MSI K7n2 Delta-L HDD: 80GB WD Graka:Radeon 9600 Pro =>Alekeijer Straussbuwe
user-307
26.04.2007 11:55

Für das tmp Verzeichnis brauchst weder was angeben, noch anpassen.
Lass dir doch mal den Temp-Namen der Datei nach dem upload ausgeben um zu sehen ob er überhaupt was hochgeladen hat...
$_FILES['pictures']['tmp_name']

Wenn du ne Ausgabe bekommst, weißt du schonmal das die Datei zumindest schonmal aufm Server ist.

//EDIT:

Ich seh grad. Im tmp Verzeichnis is die Datei ja schon
Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/phpp6PlBO' to '/www/htdocs/w007506c/bonze/admin/uploaded/SP_A0090.jpg' in /www/htdocs/w007506c/bonze/admin/pages/edit.php on line 251
(tmp_name ist phpp6PlBO)
Wenn du dir sicher bist, dass dein Verzeichnis die richtigen Rechte hat, würde ich sonst noch vorschlagen beim Provider mal nachzufragen. Denn dein Skript hat ja schließlich ein Problem damit in dein upload Verzeichnis zu schreiben...

.., Spark
user-139
29.04.2007 20:37

wenn ich nun ein einzelnes bild löschen mlöchte mache ich das so ,.
bild-thumb-ausgabe
					echo	"<br/><img src=\"".$images."t_".$row[bild5]."\" alt=\"".$row[marke]."-".$row[kfztyp]."\" border=\"0\"/>";
echo "<input type=\"checkbox\" name=\"delete[]\" value=\"bild5\"/>l&ouml;schen?!";


so check-box-auswertung
		if(array_key_exists('delete', $_POST)){
foreach($_POST['delete'] as $key => $value) {
if(isset($value)){
##datei auf server löschen
if(file_exists($upload_dir.$row[$value])){
unlink($upload_dir.$row[$value]);
unlink($upload_dir."t_".$row[$value]);
}
}
###einträge in der db löschen!
$testarray = array("bild1"=>"0", "bild2"=>"1", "bild3"=>"2", "bild4"=>"3", "bild5"=>"4"zwinkern;
$dateinamen[$testarray[$value]] = "";
}
}




schreiben in die db!
			$sql ="UPDATE `".$mysql['db']."`  SET
`marke` = '".$_POST['marke']."',
`kfztyp` = '".$_POST['typ']."',
`bild1` = '".$dateinamen[0]."',
`bild2` = '".$dateinamen[1]."',
`bild3` = '".$dateinamen[2]."',
`bild4` = '".$dateinamen[3]."',
`bild5` = '".$dateinamen[4]."'
";


das bild wird zwar von der hdd gelöschd, jedoch bleibt der wert in der db gleich! bzw noch drin , weiss jemand warum ? kann keinen fehler entdecken!

OS: Windows XP CPU: AMD Athlon XP 3200+ RAM: 512MB DDR PC3200 (Dual Channel) Mainboard: MSI K7n2 Delta-L HDD: 80GB WD Graka:Radeon 9600 Pro =>Alekeijer Straussbuwe