php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 21-01-2008, 23:37
Spreech
 Newbie
Links : Onlinestatus : Spreech ist offline
Registriert seit: Apr 2006
Beiträge: 12
Spreech ist zur Zeit noch ein unbeschriebenes Blatt
Standard [PHP5] Formularinhalte nicht verwerfen

Hallo zusammen,

ich habe ein kleines Formular gebastelt.

Wird das Formular abgeschickt wird geprüft ob ein bestimmtes Feld ausgefüllt ist.

Wenn dies nicht so ist, wird eine Fehlermeldung ausgegeben.

Nun ist es allerdings so, dass alle Felder des Formulars geleert werden, wenn die Fehlermeldung angezeigt wird.

Ich möchte nun erreichen, dass die Eingaben nicht gelöscht werden, sondern die Fehlermeldung angezeigt wird, die Inhalte aber gleich bleiben.

Mein Ansatz war bisher so, dass ich am Anfang des Scripts eine Session starte:

Code:
session_start ();
Den Feldern des Formulars weiße ich die Werte der Sessionvariablen zu, diese sollten ja am Anfang leer sein.

Auszug:
Code:
        <tr>
                <td>Name: </td>

                <td>
                <input type="text" name="name" value="<?php echo $_SESSION["name"]; ?>" size="20"><br>
                </td>
                <td> &nbsp;
                </td>

        </tr>

        <tr>
                <td valign=middle>Vorname: </td>

                <td>
                <input type="text" name="vorname" value="<?php echo $_SESSION["vorname"]; ?>" size="20"><br>
                </td>
        </tr>
Beim abschicken des Formulars werden die Session Variablen dann belegt:
Code:
if (isset($_POST["order"]))
                {

                                $_SESSION["name"]=$_POST['name'];
                                $_SESSION["vorname"]=$_POST['vorname'];
.
.
.
.
und danach kommt dann eben die Sicherheitsabfrage:
Code:
 if ($code==$code2)
Leider klappt die Sache nicht so wie ich das will.
Die Fehlermeldung wird angezeigt, aber alle Formularfelder sind wieder leer.

Das Formular gibt die Daten per Post an die gleiche Datei zurück.

Kann mir jemand bei meinem Denkfehler helfen?

Vielen Dank.

Gruß
Euer Spreech
Mit Zitat antworten
  #2 (permalink)  
Alt 21-01-2008, 23:51
Benny-one
 Master
Links : Onlinestatus : Benny-one ist offline
Registriert seit: Jan 2002
Ort: Fulda
Beiträge: 5.700
Benny-one ist zur Zeit noch ein unbeschriebenes Blatt
Benny-one eine Nachricht über ICQ schicken
Standard

Du kannst versuchen zu debuggen, wie weit dein Script eigentlich kommt.
PHP-Code:
echo '<pre>';
print_r($_POST);
echo 
'</pre>'
Das fügst du einfach an Anfang deines Scriptes. Dann wo deine IF-Anweisung ist, kannst du mal prüfen, ob der überhaupt bis dahin kommt, in dem du einfach ein echo "blabla"; machst.

Du kannst dir natürlich auch all die Mühe sparen und mal in meiner Signatur auf den Formulargenerator klicken der macht dir nämlich sowas
Mit Zitat antworten
  #3 (permalink)  
Alt 21-01-2008, 23:54
asp2php
 Banned
Links : Onlinestatus : asp2php ist offline
Registriert seit: Feb 2004
Beiträge: 11.745
asp2php ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Benny, nichts zu tun ... du läufst ja rum und machst Eigenwerbung
Mit Zitat antworten
  #4 (permalink)  
Alt 21-01-2008, 23:56
Benny-one
 Master
Links : Onlinestatus : Benny-one ist offline
Registriert seit: Jan 2002
Ort: Fulda
Beiträge: 5.700
Benny-one ist zur Zeit noch ein unbeschriebenes Blatt
Benny-one eine Nachricht über ICQ schicken
Standard

Ne mal ehrlich, sind schon ziemlich viele die irgendwas mit nem Formular auf einmal haben. War doch ganz gut das Ding zu programmieren
Nimmt einem viel Arbeit ab und der Quellcode ist sauber.
Mit Zitat antworten
  #5 (permalink)  
Alt 22-01-2008, 00:17
Spreech
 Newbie
Links : Onlinestatus : Spreech ist offline
Registriert seit: Apr 2006
Beiträge: 12
Spreech ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Danke für die Tipps!

Also wenn ich debugge, dann erscheint sowas hier:

[code]
[name] => asdasd
[vorname] => asdadad
Code:
 => z5ydqs9e
    [code2] => z5ydqs9e
    [order] => BESTELLEN
müsste da nicht etwas von SESSION["name"] oder sowas in der art stehen?

Also die Variablen müsste er richtig belegen.

Ich mache erst die Variablendefinition und anschließend kommt erst die if Abfrage.
Die Abfrage durchläuft er also ganz normal

Weltklasse Aktion dass du so einen Formulargenerator anbietest, schaue ich auf jeden Fall einmal an!
Da ich allerdings ganz am Anfang von php Arbeiten stehe und stets dazu lernen will und natürlich auch ein gewisser Ehrgeiz da ist, würde es mich doch auch freuen wenn ich mein Script so hinbekommen würde
Mit Zitat antworten
  #6 (permalink)  
Alt 22-01-2008, 00:24
Benny-one
 Master
Links : Onlinestatus : Benny-one ist offline
Registriert seit: Jan 2002
Ort: Fulda
Beiträge: 5.700
Benny-one ist zur Zeit noch ein unbeschriebenes Blatt
Benny-one eine Nachricht über ICQ schicken
Standard

Du kannst auch in das <pre> Ding statt dem $_POST mal das $_SESSION schreiben, um zu prüfen ob die Session gefüllt ist.
Mit Zitat antworten
  #7 (permalink)  
Alt 22-01-2008, 00:46
PHP-Desaster
 PHP Expert
Links : Onlinestatus : PHP-Desaster ist offline
Registriert seit: Mar 2006
Beiträge: 3.105
PHP-Desaster befindet sich auf einem aufstrebenden Ast
Standard

Wenn die Fehlerausgabe direkt beim Formular ist, gib direkt $_POST['bla'] aus und spar dir den Weg über die Session!
Mit Zitat antworten
  #8 (permalink)  
Alt 22-01-2008, 18:54
Spreech
 Newbie
Links : Onlinestatus : Spreech ist offline
Registriert seit: Apr 2006
Beiträge: 12
Spreech ist zur Zeit noch ein unbeschriebenes Blatt
Standard

hmmm also egal welchen weg ich nehme, es kommt leider nicht zum gewünschten ergebnis...

hier einmal das komplette script:

http://www.4webmaster.net/service_to...tm?get_code=30

Vielleicht kann da einmal wer einen Blick drauf werfen und mir den Fehler sagen?

Vielen Dank!
Euer Spreech

Geändert von Spreech (22-01-2008 um 19:01 Uhr)
Mit Zitat antworten
  #9 (permalink)  
Alt 22-01-2008, 18:55
Benny-one
 Master
Links : Onlinestatus : Benny-one ist offline
Registriert seit: Jan 2002
Ort: Fulda
Beiträge: 5.700
Benny-one ist zur Zeit noch ein unbeschriebenes Blatt
Benny-one eine Nachricht über ICQ schicken
Standard

Entweder Code umbrechen oder http://www.4webmaster.net/service_to...chenablage.htm benutzen.
Mit Zitat antworten
  #10 (permalink)  
Alt 22-01-2008, 21:44
ezkimo
 Registrierter Benutzer
Links : Onlinestatus : ezkimo ist offline
Registriert seit: Apr 2005
Ort: Beckum / Westf.
Beiträge: 279
ezkimo befindet sich auf einem aufstrebenden Ast
ezkimo eine Nachricht über ICQ schicken
Standard

Hm ... also irgendwie erschließt sich mir der logische Ablauf nicht so ganz. Wenn nach dem Absenden eine Pflichtfeldüberprüfung stattfindet und das Formular bei Fehlern noch mal ausgegeben werden soll, steht Dein PHP Code an vollkommen falscher Stelle.

Mach Dir noch mal Gedanken über den Ablauf.
Mit Zitat antworten
  #11 (permalink)  
Alt 22-01-2008, 21:54
asp2php
 Banned
Links : Onlinestatus : asp2php ist offline
Registriert seit: Feb 2004
Beiträge: 11.745
asp2php ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von Spreech
hmmm also egal welchen weg ich nehme, es kommt leider nicht zum gewünschten ergebnis...

hier einmal das komplette script:

http://www.4webmaster.net/service_to...tm?get_code=30

Vielleicht kann da einmal wer einen Blick drauf werfen und mir den Fehler sagen?

Vielen Dank!
Euer Spreech
Ähm ... wo muss session_start() stehen?

Lesen: http://www.php-resource.de/forum/sho...threadid=50454

und anschliessend (höchst wahrscheinlich) auch das hier: Warning: Cannot modify header information
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 07:07 Uhr.