Hello,
Meine Datei sieht momentan so aus:
Was stimmt noch nicht an meinem script, WIE bekomme ich nun mein MPG file in einen bestimmeten ordner geladen???
Du hast, so scheint es, meine Verweise nicht durchgearbeiet.
$uploadPath="";
Der upload-Path wird in der php.ini oder in den VirtHosts eingestellt.
Genaueres dazu siehe http://de3.php.net/manual/en/function.ini-set.php
Er ist also i.d.R. vom Provider vorgegeben. Es handelt sich dabei um das Temporärverzeichnis.
Man muss ihn nicht wissen, da in $_FILES[$inputfeldname]['tmp_name'][0] *1)
Lies Dir bitte auch http://de2.php.net/features.file-upload durch.
$mimiMPG="video/mpeg";
$mimiPDF="application/pdf "; <--+
+-- Das Leerzeichen würde stören
Hier wäre ein Array angebracht
$_allowedMIME[] = 'video/mpeg';
$_allowedMIME[] = 'application/pdf';
$mpg1File=$_FILES['mpg1']['name'];
Das Name der Datei kann vom Client beliebig gesetzt werden.
Man sollte ihn immer auf seinen basename()-Anteil reduzieren
http://de2.php.net/manual/en/function.basename.php
if($mpg1File!="")
Ob das Feld leer ist, ist unerheblich. Das wäre auch möglich, wenn eine Datei hochgeladen wurde. Dann müsste eben beim Verschieben auf dem Server ein Name ausgewürfelt werden. Empfehlenswert ist da
$savename = "$user.".date('YmdHis').".$ext";
Wobei $user aus der Anmeldung des Users ermittelt wird und $ext mittels der mime_content_type() und /oder getimagesize() Funktion un einem eigenen Übersetzungs-Array.
{
$type=mime_content_type($_FILES['mpg1']['tmp_name']);if($type==$mimiMPG)
If (in_array($type,$_allowedMIME))
{
if(move_uploaded_file)
{
$saveok = move_uploaded_file($_FILES[$feldname]['tmp_name'],$pictureSavePath.'/'.$savename);
print "upok";
echo "<p class="message">".(($saveok)?'Upload erfolgreich abgeschlossen':'Leider trat ein Fehler auf')."</p>\n";
}
}
}
else{print "doc leer";}
?>
<form name="form1" method="post" action="?" enctype="multipart/form-data">
<input type="file" name="mpg1">
<input type="submit" value="up" name="submit">
</form>
</body>
</html>
Du hast leider das Feld $_FILES[$feldname]['error'][0] *1) nicht berücksichtigt.
Das solltest Du als erstes tun, dann die Größe der Datei anschauen, ob sie größer 0 ist, denn was wollst Du leere Dateien bewwegen?
Und dann schaust Du dir den Mime-Type an und prüfst, ob du ihn annehmen willst und wohin die Datei gehört ($pictureSavePath setzen) und dann schaust Du Dir den namen der Datei an und baust daraus den $savename.
Erst _dann_ führst Du die Verschiebung durch.
*1) Der index wird nur bei Multiuploads angelegt
Harzliche Grüße aus http://www.annerschbarrich.de
Tom
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau