Uploadscript Problem mit Unterordnerwahl

spikaner

Quereinsteiger @ php
Hier erstmal der wichtige Ausschnitt.
PHP:
<?php
$fn = "test.jpg";

echo print_r($_GET);
echo print_r($_POST);

// filenamen schön machen
$fn = preg_replace("/[^a-zA-Z0-9._-]/", "_", $_FILES['Filedata']['name']);
// verzeichnis setzen
$fn = "uploaddir".$_POST[dir].$fn;

echo $fn;
?>
So das Array ist vorhanden und übergibt Array ( [dir] => /test/ ) nur echo $fn; gibt mir nichts mehr aus (Überhauptnichts) als ob es nie vorhanden war.
Wo liegt mein denkfehler

mfg Spikaner
 
Was passiert wenn du dir den String unterhalb der ersten definition ausgibst? Was passiert wenn du den zweiten String anders benennst und wenn du das dir in Anführungszeichen setzt?

PHP:
<?php
$fn1 = "test.jpg";

echo print_r($_GET);
echo print_r($_POST);

// filenamen schön machen
$fn2 = preg_replace("/[^a-zA-Z0-9._-]/", "_", $_FILES['Filedata']['name']);
// verzeichnis setzen
$fn3 = "uploaddir".$_POST['dir'].$fn2;

echo "'".$fn1."'<br>'".$fn2."'<br>'".$fn3."'";
?>

Eigentlich sollte schon helfen das $_POST['dir'] in Anführungszeichen zu setzten, andernfalls siehst du in meinem Code genau welcher Teil dir den Fehler gibt.
 
Array ( [dir] => /test/ )

'test.jpg'
''
'uploaddir'

und das wars auch schon, sprich er setzt es warum auch immer nicht zusammen.

mfg Spikaner
 
Zuletzt bearbeitet:
Kannst du bitte einmal die Ausgabe von "meinem" Code hinschreiben. Mit den ' ' und so...Wenn es immer noch nicht geht, schreib mir bitte auch noch die Ausgabe von der $fn3 ohne dass du $fn2 anhängst...

//edit: So, Anhand deines Edits, dass du gemacht hast bevor ich gepostet habe, sehen wir, dass deine preg_replace nicht funktioniert...Was hast du in $_FILES['Filedata']['name'] und was hast du in $_POST['dir']? Gibt diese beiden mal aus, seperat, nicht mit print_r() das ganze Array.
 
Zuletzt bearbeitet:
fn1 'test.jpg'
fn2 'test.jpg'
fn3 'uploaddirtest.jpg'

sprich fn3 wird falsch verarbeitet, der $_POST wird nicht hinzugefügt

mfg Spikaner
 
Zurück