$_post Klappt Nicht
#16
geschrieben 28. Juli 2008 - 14:00
Wie schaut es mit anderen Browsern aus, geht es da sofort oder ist eine ähnliche Prozedur notwendig?
Anzeige
#17
geschrieben 28. Juli 2008 - 14:07
Deshalb auch in den INPUT TAG "accept=\"text/*\" damit nur der Text mit kommt.
Also kein Upload.
Mit basename(); hole ich mir dann den Dateinamen.
Also das klappt auch nicht. Ich habe noch festgestellt wenn ich auf das Formular das erste mal gehe und einfach noch einmal aktualisieren und dann was ändere oder eintrage klappt es auch.
Nur beim ersten mal nicht! Ich verstehe es einfach nicht....
Picard
#18
geschrieben 28. Juli 2008 - 14:13
Füge mal folgendes ganz oben in dein aenderung_speichern.php ein:
header("Cache-Control: no-cache, must-revalidate"); header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
Gruß,
Stefan
#19
geschrieben 28. Juli 2008 - 14:21
Also wieder leer...
Och menno....kann es am Server liegen bzw. Apache einstellungen oder so?
Picard
#20
geschrieben 28. Juli 2008 - 14:23
Zitat (Picard: 28.07.2008, 15:21)
Also wieder leer...
Och menno....kann es am Server liegen bzw. Apache einstellungen oder so?
Also normalerweise kann es nicht am Server liegen, da es ja (hin und wieder) funktioniert und nur vom Browserverhalten abhängig ist. Hast du mal den Cache deines Browsers gelöscht?
#21
geschrieben 28. Juli 2008 - 14:25
Ich mein, ich mache dies auch nicht zum 1. mal. Deswegen wundert es mich ja...
Picard
#22
geschrieben 28. Juli 2008 - 16:41
ich glaube, ich habe das Problem gefunden:
echo " <td><input ".hover_input." name=\"bild\" type=\"file\" size=\"10\" maxlength=\"100000\" accept=\"text/*\"></td>";
Zitat
Deshalb auch in den INPUT TAG "accept=\"text/*\" damit nur der Text mit kommt.
Das funktioniert so leider nicht. Das Attribut accept="text/*" weist den Browser dazu an, dass nur Text-Dateien (also z.B. txt, html, php) hochgeladen werden dürfen!! Logischerweise wird das Formular gar nicht abgesendet, wenn du an dieser Stelle eine Bild-Datei einfügst!
Ferner benötigst du - wie Diewie schon angemerkt hat - das Attribut enctype="multipart/form-data" im form-Tag, da ansonsten serverseitig keine input-Felder des Typs file verarbeitet werden können.
Wenn du nur den Dateinamen einer Datei benötigst, musst du dir was anderes überlegen; mit einem <input type="file"> kannst du in diesem Falle nicht arbeiten, da ansonsten immer auch die Datei hochgeladen wird.
Viele Grüße
Dieser Beitrag wurde von dblay bearbeitet: 28. Juli 2008 - 16:43
#23
geschrieben 28. Juli 2008 - 19:18
Und ich hatte "enctype="multipart/form-data"" schon drin aber hat ja dann auch nicht geklappt.
Warum wird das Form nicht beim 1. mal abgeschickt nur wegen diesen input statement?
Aber ich habe noch ein Formular wo neue Datensätze anlege und da ist es genauso aufgebaut und es klappt.
Ich kann immer aus einen leeren Form ein neuen Datensatz anlegen...
Das finde ich ja so komisch das es so undurchsichtig ist. Aber werde morgen noch einmal testen.
Oder hast du noch eine Idee?
Zitat
Was ist wenn es leer ist? Ich habe es beim Test ja leer gelassen?
Hoffe ihr könnt mir noch ein paar tipps geben
Aber wirklich vielen Dank schon einmal für die ganzen Bemühungen!!!
Gruß,
Picard
Picard
#24
geschrieben 29. Juli 2008 - 15:49
also ich habe jetzt nochmal ohne include probiert ( alles in eine Seite ) und das Form-Tag neu gemacht und ohne den input file typ unten und ohne mein JavaScript.
Ich bin der Meinung es liegt am Apache! Kann das sein?
Weil das Script ist ok! Es muss so gehen.
Ich habe nochmal immer wieder mal zurück geklickt und auf abschicken einmal ging es und einmal nicht...ich kann es echt nicht eingrenzen...
Gibt es da irgendwelche einstellungen oder so?
Gruß,
Picard!
Picard
#25
geschrieben 29. Juli 2008 - 17:24
Zitat
Zitat
Also was mir noch so einfällt:
Füge mal am Anfang deines PHP-Skripts folgende Zeile ein:
error_reporting(E_ALL);
Damit kannst du schonmal ausschließen, dass sich der Fehler irgendwo im PHP-Code versteckt.
Ansonsten solltest du alle Variablen, die im HTML-Code ausgegeben werden, zuvor durch htmlentities() filtern lassen - einerseits kannst du so ausschließen, dass der Fehler durch irgendwelche Sonderzeichen bedingt wird, und andererseits erhöht dies auch die Sicherheit deines Scripts (Stichwort XSS)
Außerdem könntest du das HTML-Markup, welches von dem Script generiert wird, mal von einem HTML-Validator überprüfen lassen, damit du sicherstellen kannst, dass das Formular intakt ist.
Wenn das alles nicht hilft, probier doch mal aus, was passiert, wenn du die Seite z.B. mit Firefox oder Opera aufrufst. Lässt sich das Problem dann reproduzieren?
PS: Was ich gerade noch sehe:
<input ".hover_input." class=\"input_feld\" ...
Was ist denn dieses hover_input, soll das eine Variable sein? Wenn ja, bitte ein $ ergänzen
Dieser Beitrag wurde von dblay bearbeitet: 29. Juli 2008 - 17:29
#26
geschrieben 29. Juli 2008 - 17:37
Notice: Undefined index: pers_nr in C:server_filespersonal_dbincludeaenderung_speich ern.php on line 12 Notice: Undefined index: name in C:server_filespersonal_dbincludeaenderung_speich ern.php on line 13 Notice: Undefined index: vorname in C:server_filespersonal_dbincludeaenderung_speich ern.php on line 14 Notice: Undefined index: straße in C:server_filespersonal_dbincludeaenderung_speich ern.php on line 15 Notice: Undefined index: plz in C:server_filespersonal_dbincludeaenderung_speich ern.php on line 16 Notice: Undefined index: ort in C:server_filespersonal_dbincludeaenderung_speich ern.php on line 17 Notice: Undefined index: geb_tag in C:server_filespersonal_dbincludeaenderung_speich ern.php on line 19 Notice: Undefined index: geb_monat in C:server_filespersonal_dbincludeaenderung_speich ern.php on line 20 Notice: Undefined index: geb_jahr in C:server_filespersonal_dbincludeaenderung_speich ern.php on line 21 Notice: Undefined index: tel_fest in C:server_filespersonal_dbincludeaenderung_speich ern.php on line 23 Notice: Undefined index: tel_mobil in C:server_filespersonal_dbincludeaenderung_speich ern.php on line 24 Notice: Undefined index: tel_zusatz in C:server_filespersonal_dbincludeaenderung_speich ern.php on line 25 Notice: Undefined index: mail_firma in C:server_filespersonal_dbincludeaenderung_speich ern.php on line 27 Notice: Undefined index: mail_privat in C:server_filespersonal_dbincludeaenderung_speich ern.php on line 28 Notice: Undefined index: funktion in C:server_filespersonal_dbincludeaenderung_speich ern.php on line 30 Notice: Undefined index: chef in C:server_filespersonal_dbincludeaenderung_speich ern.php on line 31 Notice: Undefined index: arbeitszeit in C:server_filespersonal_dbincludeaenderung_speich ern.php on line 33 Notice: Undefined index: kunde in C:server_filespersonal_dbincludeaenderung_speich ern.php on line 34 Notice: Undefined index: bild in C:server_filespersonal_dbincludeaenderung_speich ern.php on line 35
Zitat
Hier habe ich ein define noch in meiner config.php was so aussieht!
define ("hover_input", "onblur=\"style.background='#FFFFFF'\" onfocus=\"style.background='#D0FFA6'\"");
Damit ich nicht überall wenn ich ein Farbe ändere dies auch tun muss. Das nutze ich aber so schon ewig auch in anderen Fomularen und glaube nicht das es daran liegt oder?
htmlentities()?
Das schau ich mir mal wie das funzt kenne ich so jetzt nicht.
Zitat
Wo mach ich das?
Vielen Dank!
Gruß,
Picard
Picard
#27
geschrieben 29. Juli 2008 - 18:21
Füge bitte mal folgenden Code ein und poste das Ergebnis einmal, wenn es nicht funktioniert und einmal wenn es funktioniert. Vielleicht kann man einen gravierenden Unterschied erkennen.
echo '<strong>$_GET:</strong><br /><br />'; echo nl2br(print_r($_GET,1)); echo '<br /><br /><br /><strong>$_POST:</strong><br /><br />'; echo nl2br(print_r($_POST,1)); echo '<br /><br /><br /><strong>$_FILES:</strong><br /><br />'; echo nl2br(print_r($_FILES,1)); echo '<br /><br /><br /><strong>$_SERVER:</strong><br /><br />'; echo nl2br(print_r($_SERVER,1)); echo '<br /><br /><br /><strong>$_REQUEST:</strong><br /><br />'; echo nl2br(print_r($_REQUEST,1));
Und vor allem teste es mal von einem anderen Browser / PC, um ein Fehlverhalten deines IEs ausschließen zu können.
Gruß,
Stefan
#28
geschrieben 29. Juli 2008 - 19:41
Ich kann es leider erst morgen testen...bin gerade nicht an den entsprechenden Rechner!
Ihr hört von mir!
DANKE!
Gruß,
David
Picard
#29
geschrieben 30. Juli 2008 - 07:18
so einen Test habe ich gemacht: Im Firefox tritt dieses Problem nicht einmal auf. Hier klappt alles wunderbar.
Jetzt steh ich echt auf dem Schlauch!
Habt ihr noch einen Idee?
Soll ich den Code trotzdem testen?
echo '<strong>$_GET:</strong><br /><br />'; echo nl2br(print_r($_GET,1)); echo '<br /><br /><br /><strong>$_POST:</strong><br /><br />'; echo nl2br(print_r($_POST,1)); echo '<br /><br /><br /><strong>$_FILES:</strong><br /><br />'; echo nl2br(print_r($_FILES,1)); echo '<br /><br /><br /><strong>$_SERVER:</strong><br /><br />'; echo nl2br(print_r($_SERVER,1)); echo '<br /><br /><br /><strong>$_REQUEST:</strong><br /><br />'; echo nl2br(print_r($_REQUEST,1));
Gruß,
David
Picard
#30
geschrieben 30. Juli 2008 - 08:33
Gruß,
Stefan