Hallo Leute,
ich möchte mir für einige kleinere Projekte PHP-Grundlagen aneignen. Hierzu setze ich auf ein etwas älteres Buch von Markt+Technik; dies reicht für mich jedoch vollkommen aus. Sollte es einmal nicht genügen, so gibt es ja SelfPHP.
Als ersten schritt habe ich mal mit "starker Anlehnung" an das Buch einen jpge-upload geschrieben, der natürlich nicht funktioniert :-(
Es liegen 2 Dateien im selben Verzeichnis
1. index.php
PHP-Code:
<form ENCTYPE="multipart/form-data" ACTION="URL" METHOD="post">
<?php
$target = "upload.php";
?>
<HTML><HEAD><TITLE>Dateiupload</TITLE></HEAD>
<BODY BGCOLOR="white">
<FORM ENCTYPE="multipart/form-data" ACTION="<?php echo($target); ?>" METHOD="post">
<INPUT TYPE="file" NAME="file"><BR>
<INPUT TYPE="submit" VALUE="Hochladen">
</FORM>
</BODY>
</HTML>
2. upload.php
PHP-Code:
<?php
$ziel = "/uploads"; //Zielverzeichnis der Datei
$datei_max = "1024000"; // max. Dateigroesse in Byte
$datei_ende = ".jpg"; //gewünschte Dateiendung
$datei_mime = "image/jpeg";
if($file != "none") {
function random($name_laenge) {
$zeichen = "abcdefghijklmnopqrstuvwxyz1234567890";
$name_neu = "";
mt_srand ((double) microtime() * 1000000);
for ($i = 0; $i < $name_laenge; $i++) {
$name_neu .= $zeichen{mt_rand (0,strlen($zeichen))};
}
return $name_neu;
}
$ziel .= random("20") . $datei_ende;
$error = 0;
$error_log = "<B>Folgende(r) Fehler sind (ist) aufgetreten: </B><BR>";
if($file_size > $datei_max) {
$error = 1;
$error_log .= "<LI>Die Datei ist größer als $datei_max Byte!<BR>"; }
if(file_type != $datei_mime) {
$error = 1;
$error_log .= "<LI>Der Dateityp ist falsch! Die Datei muss vom Typ $datei_ende sein.<BR>";}
if($file_exists($ziel) or !copy($file, $ziel)) {
$error = 1;
$error_log .= "<LI>Ein Fehler beim Kopieren der Datei $file_name ist aufgetreten!<BR>";}
if($error == 1) {
echo($error_log . "<BR>Die Datei wurde nicht hochgeladen. Vorgang abgebrochen!");
if(file_exists($ziel)) : unlink($ziel); endif;
} else {
echo("Die Datei <B>" . basename($ziel). "</B>wurde erfolgreich hochgeladen.<BR><BR>");
}
unlink($file);
} else {
echo("<BR>Die Datei wurde nicht hochgeladen. Vorgang abgebrochen, da keine Datei angegeben wurde!");
}
?>
Das ganze läuft auf aktuellem Apache mittels Mamp auf einem MacBook Pro.
Wenn ich nun mittels "Hochladen" den Upload versende, bekomme ich immer die selbe Meldung:
"Not Found
The requested URL /URL was not found on this server."
Kann mir jemand helfen? Ich finde meinen Fehler nicht.
Vielen Dank
TP