WinFuture-Forum.de: $_post Klappt Nicht - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
  • 3 Seiten +
  • 1
  • 2
  • 3

$_post Klappt Nicht

#16 Mitglied ist offline   Diewie 

  • Gruppe: aktive Mitglieder
  • Beiträge: 409
  • Beigetreten: 18. Juni 06
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Geisenhausen / München

geschrieben 28. Juli 2008 - 14:00

Hm das ist schon sehr komisch. Füge mal enctype="multipart/form-data" zu deinem Form-Tag hinzu, da du ja auch Dateien uploaden willst und lass das onsubmit zum testen weg.
Wie schaut es mit anderen Browsern aus, geht es da sofort oder ist eine ähnliche Prozedur notwendig?
0

Anzeige



#17 Mitglied ist offline   Picard 

  • Gruppe: aktive Mitglieder
  • Beiträge: 125
  • Beigetreten: 04. Januar 06
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Puffbohne

geschrieben 28. Juli 2008 - 14:07

Ok, ich will aber keine Datei Uploaden. Brauche nur den Dateinamen.
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.... ;)
MFG

Picard
0

#18 Mitglied ist offline   Diewie 

  • Gruppe: aktive Mitglieder
  • Beiträge: 409
  • Beigetreten: 18. Juni 06
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Geisenhausen / München

geschrieben 28. Juli 2008 - 14:13

Hört sich nach einem Cache-"Problem" an.

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
0

#19 Mitglied ist offline   Picard 

  • Gruppe: aktive Mitglieder
  • Beiträge: 125
  • Beigetreten: 04. Januar 06
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Puffbohne

geschrieben 28. Juli 2008 - 14:21

Es sah gut aus am Anfang aber als ich ein bissel probiert habe bekam ich wieder diese Ausgabe: "Array ( ) 1array(0) { }"

Also wieder leer...

Och menno....kann es am Server liegen bzw. Apache einstellungen oder so?
MFG

Picard
0

#20 Mitglied ist offline   Diewie 

  • Gruppe: aktive Mitglieder
  • Beiträge: 409
  • Beigetreten: 18. Juni 06
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Geisenhausen / München

geschrieben 28. Juli 2008 - 14:23

Beitrag anzeigenZitat (Picard: 28.07.2008, 15:21)

Es sah gut aus am Anfang aber als ich ein bissel probiert habe bekam ich wieder diese Ausgabe: "Array ( ) 1array(0) { }"

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?
0

#21 Mitglied ist offline   Picard 

  • Gruppe: aktive Mitglieder
  • Beiträge: 125
  • Beigetreten: 04. Januar 06
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Puffbohne

geschrieben 28. Juli 2008 - 14:25

Jap habe alles probiert...mir fällt auch nix mehr ein.
Ich mein, ich mache dies auch nicht zum 1. mal. Deswegen wundert es mich ja...
MFG

Picard
0

#22 Mitglied ist offline   dblay 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.246
  • Beigetreten: 18. März 07
  • Reputation: 1

geschrieben 28. Juli 2008 - 16:41

Hallo Picard,

ich glaube, ich habe das Problem gefunden:

echo "  <td><input ".hover_input." name=\"bild\" type=\"file\" size=\"10\" maxlength=\"100000\" accept=\"text/*\"></td>";

Zitat

Ok, ich will aber keine Datei Uploaden. Brauche nur den Dateinamen.
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

Zeit ist, was verhindert, dass alles gleichzeitig passiert.
0

#23 Mitglied ist offline   Picard 

  • Gruppe: aktive Mitglieder
  • Beiträge: 125
  • Beigetreten: 04. Januar 06
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Puffbohne

geschrieben 28. Juli 2008 - 19:18

Ok aber warum klappt es dann beim 2. mal?
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

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!


Was ist wenn es leer ist? Ich habe es beim Test ja leer gelassen?

Hoffe ihr könnt mir noch ein paar tipps geben :wink:
Aber wirklich vielen Dank schon einmal für die ganzen Bemühungen!!!


Gruß,

Picard
MFG

Picard
0

#24 Mitglied ist offline   Picard 

  • Gruppe: aktive Mitglieder
  • Beiträge: 125
  • Beigetreten: 04. Januar 06
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Puffbohne

geschrieben 29. Juli 2008 - 15:49

Hi,

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!
MFG

Picard
0

#25 Mitglied ist offline   dblay 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.246
  • Beigetreten: 18. März 07
  • Reputation: 1

geschrieben 29. Juli 2008 - 17:24

Zitat

Ok aber warum klappt es dann beim 2. mal?
Tja, das weiß ich wiederum auch nicht :P

Zitat

Was ist wenn es leer ist? Ich habe es beim Test ja leer gelassen?
Das würde die Funktion des Formulars jedenfalls nicht beeinflussen.

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 :P

Dieser Beitrag wurde von dblay bearbeitet: 29. Juli 2008 - 17:29

Zeit ist, was verhindert, dass alles gleichzeitig passiert.
0

#26 Mitglied ist offline   Picard 

  • Gruppe: aktive Mitglieder
  • Beiträge: 125
  • Beigetreten: 04. Januar 06
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Puffbohne

geschrieben 29. Juli 2008 - 17:37

Ok habe das mit dem Error Reporting gemacht. Beim Formular kommt nix aber wenn ich es abschicke erscheint dies hier:

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

Was ist denn dieses hover_input, soll das eine Variable sein? Wenn ja, bitte ein $ ergänzen


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

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.


Wo mach ich das?

Vielen Dank!


Gruß,

Picard
MFG

Picard
0

#27 Mitglied ist offline   Diewie 

  • Gruppe: aktive Mitglieder
  • Beiträge: 409
  • Beigetreten: 18. Juni 06
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Geisenhausen / München

geschrieben 29. Juli 2008 - 18:21

Die Undefined index-Meldungen kommen daher, dass $_POST keine Daten bekommt, und daher die Indizes nicht existieren.

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
0

#28 Mitglied ist offline   Picard 

  • Gruppe: aktive Mitglieder
  • Beiträge: 125
  • Beigetreten: 04. Januar 06
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Puffbohne

geschrieben 29. Juli 2008 - 19:41

Ok, vielen vielen Dank das ihr mir helft.
Ich kann es leider erst morgen testen...bin gerade nicht an den entsprechenden Rechner!

Ihr hört von mir!


DANKE!


Gruß,

David
MFG

Picard
0

#29 Mitglied ist offline   Picard 

  • Gruppe: aktive Mitglieder
  • Beiträge: 125
  • Beigetreten: 04. Januar 06
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Puffbohne

  geschrieben 30. Juli 2008 - 07:18

Moin @all,

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
MFG

Picard
0

#30 Mitglied ist offline   Diewie 

  • Gruppe: aktive Mitglieder
  • Beiträge: 409
  • Beigetreten: 18. Juni 06
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Geisenhausen / München

geschrieben 30. Juli 2008 - 08:33

Nein, dann brauchst du das eigentlich nicht mehr machen. Welche IE Version hast du? Hast du irgendwelche besonderen Einstellungen vorgenommen oder etwas deaktiviert?

Gruß,
Stefan
0

Thema verteilen:


  • 3 Seiten +
  • 1
  • 2
  • 3

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0