aphaean
Mitglied
Goodafternoon Ladies & Gentlemen,
Ich verwende eine einfache Form um Bilder auf unseren Server hochzuladen - dabei sind mir eine Anzahl von Problemen begegnet.
1. Ich würde die Bilder (Dateitypen auf gif, jpeg und pjpeg beschränkt) gerne umbenennen. Ich habe folgende Variable: $_FILES['imagefile']['name'], wobei der Name der von dem User angegebenem Dateiname ist.
a) Wie ändere ich diesen Namen rein syntaktisch, ohne dass meine Dateiendung (gif, jpg ... usw) verändert wird / flöten geht?
b) Wie weise ich dem Bild einen einzigartigen Namen zu? Vorstellbar wäre zB, dass das erste Bild 1.jpg ... usw heisst. Irgendwie ist mir unklar, wie ich verhindere, dass ich der Datei den gleichen Namen zuweise, wie bereits existente (hochgeladene) Dateien.
2. Ich kontrolliere in dem ganzen Vorgang aus Sicherheitsgründen Dateigrösse und Dateityp - gibt es da noch andere Grössen, die ich berücksichtigen sollte?
Der Code (ohne Abfrage der Dateigrösse):
Wäre für Hinweise sehr dankbar
cheerio,
anna
Ich verwende eine einfache Form um Bilder auf unseren Server hochzuladen - dabei sind mir eine Anzahl von Problemen begegnet.
1. Ich würde die Bilder (Dateitypen auf gif, jpeg und pjpeg beschränkt) gerne umbenennen. Ich habe folgende Variable: $_FILES['imagefile']['name'], wobei der Name der von dem User angegebenem Dateiname ist.
a) Wie ändere ich diesen Namen rein syntaktisch, ohne dass meine Dateiendung (gif, jpg ... usw) verändert wird / flöten geht?
b) Wie weise ich dem Bild einen einzigartigen Namen zu? Vorstellbar wäre zB, dass das erste Bild 1.jpg ... usw heisst. Irgendwie ist mir unklar, wie ich verhindere, dass ich der Datei den gleichen Namen zuweise, wie bereits existente (hochgeladene) Dateien.
2. Ich kontrolliere in dem ganzen Vorgang aus Sicherheitsgründen Dateigrösse und Dateityp - gibt es da noch andere Grössen, die ich berücksichtigen sollte?
Der Code (ohne Abfrage der Dateigrösse):
PHP:
if ($_FILES['imgfile']['type'] == "image/pjpeg" || $_FILES['imgfile']['type'] == "image/gif" )
{
copy ($_FILES['imgfile']['tmp_name'], "files/".$_FILES['imgfile']['name']) or die ("Could not copy");
}
else
{
echo "error";
}
Wäre für Hinweise sehr dankbar
cheerio,
anna