Lutz Fechner: Upload funktioniert nicht

Hallo,
bin relativer Anfänger was PHP anbelangt und habe auch ncoh keinen php-Webspace, darum teste ich alle scripts nur lokal. Bisher klappte das auch Wunderbar. Ich habe mir zu diesem Zwecke "XAMPP" runtergeladen. Folgendes:
Ich wollte jetzt einen Skript zum Opload von Dateien. Folgendes hab ich dafür gemacht:

<html>
<head>
  <title>9.14: Eine einfaches Formular zum Hochladen von Dateien</title>
</head>
<body>
<form enctype="multipart/form-data" action="<?php print $PHP_SELF?>" method="POST">
<input type="hidden" name="MAX_FILE_SIZE" value="51200">
<input type="file" name="fupload"><br>
<input type="submit" value="Hochladen!"><br>
</form>
<?php print $fupload?><br><?php print $fupload_name?><br><?php print $fupload_size?><br><?php print $fupload_type?>
</body>
</html>

(ach, gibt eis in diesem Forum keine scrip-tags oder ähnliches?)

also, hier soll eine Datei hochgeladen werden, die sich nach meinem wissen dann im TMP-Verzeichnis des Servers wiederfinden müsste.
Der lokale Pfad dafür verweist phpinfo() und der Variablen $fupload
auf meinen Windows-Temp-ordner, in dem ich die DAtei jedoch nciht finden kann. es müsste doch aber klappen so, hab ich was falsch gemacht oder geht das nur mit einem richtigen Server? ist doch ehr unwahrschienlich, oder?
Die Dateie ist auch nicht zu gross, sie hat gerademal 4KB. Die Anzeige der Variablen ist nicht sehr schön,d as weiss ich, diese Zeile hab ich auch erst eingebaut, nachdem es nicht funktionierte. Den Quelltext hab ich aus dem Buch "Jetzt lerne ich PHP4" abe rich kann keinen Unterschied zur gedruckten Version finden. Ist das ein Fehler im Buch? wäre nciht der erste...
Vielen dank!
Lutz Fechner

  1. Hallo Lutz!

    Schau dir mal zu diesem Thema folgende Seiten an:
     - dclp-FAQ: 11.1. Wie übergebe ich Variablen aus einem Formular an ein PHP-Script?
       http://www.dclp-faq.de/q/q-formular-variablen.html
     - dclp-FAQ: 11.20. Warum funktionieren meine Formulare nicht?
       http://www.dclp-faq.de/q/q-formular-register-globals.html
     - dclp-FAQ: 11.11. Wie funktioniert ein Datei-Upload über HTML-Formulare?
       http://www.dclp-faq.de/q/q-formular-upload-php4.html

  2. Hallo,

    also, hier soll eine Datei hochgeladen werden, die sich nach meinem wissen dann im TMP-Verzeichnis des Servers wiederfinden müsste.
    Der lokale Pfad dafür verweist phpinfo() und der Variablen $fupload
    auf meinen Windows-Temp-ordner, in dem ich die DAtei jedoch nciht finden kann. es müsste doch aber klappen so, hab ich was falsch gemacht oder geht das nur mit einem richtigen Server? ist doch ehr unwahrschienlich, oder?

    Da gehts Du völlig recht in der Annahme. Für den Abarbeitungszeitraum findet sich kurzweilig eine Datei im vorkonigurierten upload_tmp_dir. Um es nochmal deutlich zu machen, sie existiert für gewöhnlich in einer Zeitspanne im Bereich von Millisekunden.

    http://de3.php.net/manual/de/features.file-upload.php

    Gruß aus Berlin!
    eddi

    --
    Manchmal trifft es einen doch ganz unverhofft t86591:
    > '..."Vorläufig abgebrochen" ist ungefähr so sinnvoll formuliert, wie "einstweilig erschossen" oder "temporär verbrannt"...'
    Ich danke Sven für diese Erkenntnis - Gott, was habe ich gelacht ;)
    1. hallo,
      ja ok, danke ;) ich dachte halt:
      wenn schon das nich klappt, warum soll ich in dem buch dann weitermachen,
      das nöcshte beispiel kopiert die datei dann woanders hin, dann
      existiert sie ja länger. dachte, die im temp-ordner würde auch bleiben
      danke aus freiburg!

      1. Hello,

        wenn schon das nich klappt, warum soll ich in dem buch dann weitermachen,
        das nöcshte beispiel kopiert die datei dann woanders hin, dann
        existiert sie ja länger. dachte, die im temp-ordner würde auch bleiben

        Nein, es ist eigentlich aber keine "echte" TMP-Datei. Die würde von ganz alleine (OS ist vrantwortlich) wieder verschwinden. Es ist eine normale Datei, aber die Instanz von PHP, die zum aufgerufenen Script gehört, löscht diese Datei automatisch nach dem Scriptende.

        Harzliche Grüße aus http://www.annerschbarrich.de

        Tom

        --
        Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
        Nur selber lernen macht schlau
      2. Hi!

        wenn schon das nich klappt, warum soll ich in dem buch dann weitermachen,

        Ja, wenn das Beispiel so aus einem Buch stammt würde ich mir das wirklich überlegen, denn damit gewöhnst Du Dir eine unsichere, bereits seit Jahren veraltete Syntax an (Stichwort "Register Globals", siehe: http://de3.php.net/manual/de/security.globals.php).

        Eddi hat Dir schon einen Link genannt wo der Datei-Upload mit PHP vernünftig beschrieben wird.

        Unter folgenden Seiten findest Du weitere Hilfe:

        http://tut.php-q.net/
        http://de3.php.net/manual/de/
        http://php-faq.de/

        Grüße
        Andreas

        --
        [remote-signature:http://knet-systems.de/tmp/rand_sig.php]