Mehrere Bilder hochladen funktioniert nicht

Tucker hat gesagt.:
Lesen! ;) Hab ich schonmal geschrieben.
Er hat wohl noch mehr "überlesen". :(

@Briefkasten, führe mal diesen Code aus und poste das Ergebnis:
PHP:
<?php
if(ini_get("register_globals") == 0) {
	echo "register_globals = OFF<br>";
} else {
	echo "register_globals = ON<br>";
}

if(ini_get("safe_mode") == 0) {
	echo "safe_mode = OFF<br>";
} else {
	echo "safe_mode = ON<br>";
}

if(ini_get("short_open_tag") == 0) {
	echo "short_open_tag = OFF<br>";
} else {
	echo "short_open_tag = ON<br>";
}
?>
 
Zuletzt bearbeitet:
Hi,

so habs mit mime auch probiert, geht leider nicht. :(

Hier die Daten:
register_globals = OFF
safe_mode = ON
short_open_tag = ON

http://kappl.milten.lima-city.de/Anna/images/upload/phpinfo.php

Ich hab jetzt die Überprüfung (if(..)) der hochgeladeten Dateien ganz weggelassen, sodass man alles hochladen kann. Anscheinend funktioniert das generelle hochladen der Dateien nicht, denn obwohl die überprüfung weg ist wird die Datei nicht hochgeladen. Wenn ich eine Datei hochlade bekomme ich die Meldung:"Datei erfolgreich hochgeladen"

Eigentlich sollten aber noch ein paar echos ausgeben werden und zwar die:
PHP:
echo "Name: ".$_FILES['imagefile'."$i"]['name']; 
					echo "Size: ".$_FILES['imagefile'."$i"]['size'].""; 
					echo "Type: ".$_FILES['imagefile'."$i"]['type'].""; 
					echo " Copy Done....";
			
		 
		 
			 echo "<br><br>"; 
			 echo "Datei konnte nicht hochgeladen werden, Falscherdateityp (".$_FILES['imagefile'."$i"]['name'].")<br>";

Hier der jetztige Code von check.php:

PHP:
<?php
include ("../../head.php");
echo '<body>';
echo '<br />';
$anzahlderbilder=$_POST["anzahlderbilder"];
$Albumname=$_POST["Albumname"];
echo "$anzahlderbilder";
echo "$Albumname";
//Upload verarbeiten

if(isset( $_POST['Submit'] )) 
{ 
//If the Submitbutton was pressed do:
	for ($i=1; $i < $anzahlderbilder; $i++)
	{
		
			
			
					move_uploaded_file ($_FILES['imagefile'."$i"]['tmp_name'], "/home/webpages/lima-city/kappl/html/images/upload/".$Albumname."/".$_FILES['imagefile'."$i"]['name']) or die ("Konnte nicht kopiert werden!"); 
					echo "Name: ".$_FILES['imagefile'."$i"]['name']; 
					echo "Size: ".$_FILES['imagefile'."$i"]['size'].""; 
					echo "Type: ".$_FILES['imagefile'."$i"]['type'].""; 
					echo " Copy Done....";
			
		 
		 
			 echo "<br><br>"; 
			 echo "Datei konnte nicht hochgeladen werden, Falscherdateityp (".$_FILES['imagefile'."$i"]['name'].")<br>";
		  
	}
}
echo '<br />';
//Zur Fehlerquellen überprüfung
//echo "";
//var_dump($Albumname);
//var_dump($_POST["Albumname"]);
//var_dump($_POST);
echo '<br />';

echo '<a href="'."$Albumname".'/" title="Ins erstellte Album wechseln">Weiter zu den upgeloadeten Bildern</a>';
echo '<br />';
echo '<br />';
include ("../footer.php");
 
?>

Mit if(isset( $_POST['Submit'] )) Funktionierts leider auch nicht. :(
 
Zuletzt bearbeitet:
Ich dachte, es hätte schon wer geschrieben...anscheinend aber doch nicht...

prüfe den Grafik-Typ per [phpf]getimagesize[/phpf]


der Grund(auch wenn ich das schon dutzende Male im Board geschrieben habe).... der MIME-Type eines JPG ist abhängig von dem Programm, mit dem er erstellt wurde.

Es gibt da bpsw. jpg, jpeg, jpe, jfif

mit getimagesize ermittelst du nicht den MIME-Type, sondern simpel...ob es ein JPG(alle diversen MIME-Types eingeschlossen) ist...oder nicht.
 
...übrigens...da register_globals OFF ist....

Code:
if(isset( $Submit ))
...darauf habe ich bereits in meiner ersten Antwort hingewiesen, dass das dann so nicht geht;)

....


Code:
if(isset( $_POST['Submit'] ))
 
Eigentlich war ich der Meinung dass bei meinem Codeschnippsel alles OK ist..... aber da hat sich doch irgendwie ein Schreibfehler eingeschlichen (wird gleich korregiert). :-(

Da Briefkasten ja einen Link zur phpinfo gepostet hat, stelle ich mal klar.....
register_globals=ON
safe_mode=ON
short_open_tag=ON

Zurück zum Thema.
War da nicht mal etwas mit move_uploaded_files() vs. copy() bei safe_mode=ON?
 
Eigentlich weiss ich garnicht, warum wir uns hier den Kopf zerbrechen.

PHP hat seine eigenen Mittel zur Fehleranalyse, also bitte das ERROR_REPORTING auf E_ALL setzen und die Fehlermeldungen hier posten...Danke :-)
 
Hi...

Also ich kenn den Code für mehrfach hochladen bissl anders:

diese Form hier: $_FILES['imagefile'."$i"]['name']; hab ich noch nie gesehen, ok kann vielleicht daran liegen das ich noch nicht lange bei bin beim programmieren, aber gelernt habe ich es so: $_FILES['imagefile']['name'][$i]; und das geht auch mit den restlichen Variablen. Desweiteren müssen die Inputfelder bei dem Namen mit den eckigen Klammern versehen sein, zumindest ist das die beste Variante also so hier <input type='file' name='blabla[]' /> usw.

Probiers mal so vielleicht klappts ja...

Und nebenbei hab ich auch noch ne Frage: Da ich gerade auch bei bin nen Script zu programmieren sagt der mir bei der Untersuchung nach dem Type das er png Dateien nicht annimmt obwohl ich $_FILES['datei']['type'] == "image/png" im Truewert mit drin habe, habe png Typen noch nie mit benutzt gehen die überhaupt?

EDIT: HmmPf... Habs rausgefunden, ich musste es noch so hier ändern || $_FILES['datei']['type'] == "image/x-png" und dann gings. Trotzdem Danke...

mfG
 
Zuletzt bearbeitet:
Zurück