benji: header() Funktion

Beitrag lesen

Hallo Samuel !

  1. Ich will

Erst mal schlecht. Sage lieber: Ich würde gerne, oder ... ich würde gerne, aber ich kann nicht  ;-)

das wenn eine Datei hochgeladen wurde, also man schon auf ein Button "hochladen" geklickt hat die Seite noch mal neu geladen wird. Damit die Datei dann in der Liste der Dateien auch wiklich angezeigt wird!

Also: seite.php mit dem Hochlade-Formular, klich auf submit, diese Seite soll noch mal geladen werden. Dann ist es ja wohl klar, dass die PHP-Verarbeitungsfunktionen für die Hochgeladenen Dateien auch in dieser seite.php stehen müssen. Am Besten prüfst du dann ganz am Anfang der Seite, ob man auf <submit> geklickt hat und verarbeitest die Daten, ansonsten Zeigst du das Formular an.

Z.B.:

...
<body>
<h1>Dateien hochladen</h1>

if($HTTP_POST_VARS["submit"])
 {
  move_uploaded_file($HTTP_POST_FILES[...], verzeichnis/wo/hin) // oder so was ähnliches halt
  // etc ...
  echo "Die Dateien" . hochladeergebnis . " wurden erfolgreich hochgeladen !";
 }
 else
 {
  echo "... dein formular halt ...";
  echo "<input type="submit" value="ab damit">";
 }

Das geht ja mit header(Location: ...) abber wenn man eine weitere Datei hochlädt soll das gleich wieder passieren doch dann kommt der Fehler "headers are already sent by...". Wie kann ich das umgehen?

Aha, anscheinend willst du nicht das, was ich dir beschrieben habe. Dein Problem ist es, dass du headers() aufrufst, nachdem du schon was an den Browser gesendet hast.

echo "hallo";
  headers("location: www.hier.de/umleitung");

geht also nicht. Es darf vor headers(); noch NICHTS, überhaupt GAR NICHTS ausgegeben werden. Das heißt natürlich nicht, dass du vorher nicht schon die kompliziertesten Funktionen aufrufen kannst, sondern, dass du z.B. per echo() oder print() nichts ausgeben darfst, oder auch nicht html-code vorher ausgeben darfst.

  1. Wie kann ich einer Variable mehrere Werte übergeben (Arry) und die/das ganze Arry an eine andere Seite übergeben (test.php?arry=...)?

Das Ding heißt "Array", und dein Verfahren ist ziemlich umständlich. Sorry, werde gerade von jemanden Gerufen, hoffe, dass ich schon mal geholfen habe.

benji

--
Soy el pequeño benji :)