[PHP] Frage zu Bilderupload
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
aussehen
banner
beitrag
bild
bilddatei
client
datei
dateiname
extension
formular
funktion
gruss
inhalt
komme
mache
ordner
target
variable
vorschlag
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Hi,
Wenn ich dich richtig verstanden habe sucht du diese Funktion:
http://www.php.net/basename
Wenn du den Namen der Datei haben willst die gerade geladen ist (wobei ich nicht glaube das du das suchst) benutz am besten folgendes:
$_SERVER['PHP_SELF'];
mfg, exphorizon -
Hi,
also ich hab hier eine Bilddatei in der $bild
und mache folgendes:
$ziel = "blub/ordner/";
$target = $ziel.$bildname;
copy($bild,$target);
Wie kann ich jetzt an den Namen des Bildes (also $bildname) kommen?
Zweierlei: Wo wird $bildname definiert? Wieso verwendest du nicht move_uploaded_file()?
Dann würde ein Script nämlich etwa so aussehen:
<?php $dest = "blub/ordner/"; $filename = "beispielblablabla"; //oder eben uniqid("") oder ähnliches $file = $_FILES['upload']; $pathinfo = pathinfo($file['name']); $filename = $filename.".".$pathinfo['extension']; move_uploaded_file($file['tmp_name'], $dest.$filename); ?>
Du brauchst dazu natürlich noch das Formular mit dem Dateifeld "upload".
gruß
ferdinand24
Beitrag geaendert: 22.4.2007 22:45:35 von ferdinand24 -
Ja, ich wollte ja wissen, wie ich die Variable $bildname rausfinde ;)
Ich hab nen Upload:
<form...>
<input name='psp_image' type='file' id='psp_image' size='37' class='button'>
...
</form>
und hier nehme ich jetzt deinen Vorschlag (an obigen Code angepasst):
$dest = 'images/banner/'; $filename = 'beispielblablabla'; //oder eben uniqid('') oder ähnliches $file = $_FILES['psp_image']; $pathinfo = pathinfo($file['name']); $filename = $filename.'.'.$pathinfo['extension']; move_uploaded_file($file['tmp_name'], $dest.$filename);
Aber wie komme ich jetzt auf die Variable $filename??
Edit: Der Inhalt der Variable soll natürlich den gleichen Namen wie vor dem Upload haben ;)
Beitrag geaendert: 23.4.2007 15:13:27 von sesch -
Ja, ich wollte ja wissen, wie ich die Variable $bildname rausfinde ;)
Ich hab nen Upload:
<form...>
<input name='psp_image' type='file' id='psp_image' size='37' class='button'>
...
</form>
und hier nehme ich jetzt deinen Vorschlag (an obigen Code angepasst):
$dest = 'images/banner/'; $filename = 'beispielblablabla'; //oder eben uniqid('') oder ähnliches $file = $_FILES['psp_image']; $pathinfo = pathinfo($file['name']); $filename = $filename.'.'.$pathinfo['extension']; move_uploaded_file($file['tmp_name'], $dest.$filename);
Aber wie komme ich jetzt auf die Variable $filename??
Edit: Der Inhalt der Variable soll natürlich den gleichen Namen wie vor dem Upload haben ;)
Beitrag geaendert: 23.4.2007 15:13:27 von sesch
Achso, sag das doch gleich ;)
$pathinfo['basename']; liefert den Dateinamen ;)
Also:
<?php $dest = 'images/banner/'; $file = $_FILES['psp_image']; $pathinfo = pathinfo($file['name']); move_uploaded_file($file['tmp_name'], $dest.$pathinfo['basename']); ?>
Allerdings empfehle ich dir nicht, den Dateinamen vom Client identisch zu übernehmen. Wenn nämlich eine Datei mit dem gleichen Namen hochgeladen wird, wird die alte überschrieben. Du könntest allerdings noch etwas davor oder dahinterhängen, z.B. uniqid("");, dann ist ausgeschlossen, dass eine Datei überschrieben wird ;)
gruß
ferdinand24
Beitrag geaendert: 23.4.2007 17:46:55 von ferdinand24 -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage