und schon ist das nächste Problem aufgetaucht:
unter PHP4 hatte ich damit keine Probleme. Unter PHP5 funktioniert es nicht mehr. Warum auch immer
seite1.php im Formularteil welches auf seite2.php leitet:
seite1.php außerhalb des Formulars:
seite2.php über dem head:
seite2.php als Abfrage und speichern:
seite2.php als Ausgabe:
wie in den Kommentaren zu seite2.php ersichtlich, komme ich schon in die 2. IF-Abfrage gar nicht rein.
Ich verstehe es nicht. Das gleiche Script läuft unter PHP4 problemlos.
Weiss hier jemand einen Rat?
unter PHP4 hatte ich damit keine Probleme. Unter PHP5 funktioniert es nicht mehr. Warum auch immer
seite1.php im Formularteil welches auf seite2.php leitet:
HTML-Code:
<input type="hidden" name="MAX_FILES_SIZE" value="600000"> <input name="datei" type="file" id="datei" size="15" maxlength="600000">
PHP-Code:
// Dateiinformationen (Ausgabe über Schleife)
if (isset($_FILES['datei']))
{
foreach ($_FILES['datei'] as $key=>$element)
{
echo '[$key] => $element<br>';
}
}
PHP-Code:
$datei = $_POST['datei'];
$MAX_FILES_SIZE = $_POST['MAX_FILES_SIZE'];
PHP-Code:
if ($datei == '')
{
$c = 'kein Bild';
}
else
{
echo '<br /><br />Bild 2: '.$datei; // als Testausgabe: wird ausgegeben
$regExp = '/^[A-Za-z0-9_-]([A-Za-z0-9_-]*\.?[A-Za-z0-9_-])*\.[jpg]{3}$/';
if ($_FILES['datei']['size'] > 0)
{
echo '<br /><br />Bild 3: '.$datei; // als Testausgabe: wird nicht ausgegeben
if ($_FILES['datei']['size'] < 600000)
{
echo '<br /><br />Bild 4: '.$datei; // als Testausgabe: wird nicht ausgegeben
if (preg_match($regExp,$_FILES['datei']['name']))
{
$c = 'okay';
echo '<br /><br />Bild 5: '.$datei; // als Testausgabe: wird nicht ausgegeben
}
else
{
$c = 'fehler';
echo 'Test: Fehler: '.$datei; // als Testausgabe: wird nicht ausgegeben
}
}
}
}
if ($c == 'okay')
{
$fotopath = '../../../images/newsletter/';
$newname = $datum.'.jpg';
if (isset($_FILES['datei']))
{
// Upload-Status
if ($_FILES['datei']['error'] == UPLOAD_ERR_OK)
{
$uploaddir = $fotopath;
// Temporäre Datei in Zielverzeichnis schreiben
move_uploaded_file($_FILES['datei']['tmp_name'],$uploaddir.$_FILES['datei']['name']);
// umbenennen der hochgeladenen Datei
rename($uploaddir.$_FILES['datei']['name'],$uploaddir.$newname);
}
}
PHP-Code:
if ($c == 'okay')
{
echo '<img src="'.$foto.'" align="left" /> '.$text;
}
Ich verstehe es nicht. Das gleiche Script läuft unter PHP4 problemlos.
Weiss hier jemand einen Rat?
Kommentar