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 Bewertung: Bewertung: 1 Stimmen, 5,00 durchschnittlich.
  #1 (permalink)  
Alt 11-12-2008, 12:22
Lavingstar
 Member
Links : Onlinestatus : Lavingstar ist offline
Registriert seit: Oct 2004
Beiträge: 212
Lavingstar ist zur Zeit noch ein unbeschriebenes Blatt
Standard Wert in Eingabefeld behalten nach nicht erfolgreichem Submit

Hallo,

ich habe ein Formular innerhalb einer php/mysql Datenbank in dem einige Pulldownmenüs und Textfelder drin sind.

3 dieser Textfelder sind Pflichtfelder - und wenn diese nicht ausgefüllt werden, erscheint eine Fehlermeldung
und das Formular wird neu aufgerufen und alle Felder wieder "resettet".

Jetzt soll es aber so sein, dass der Wert der Felder behalten wird, sodass man nicht wieder alles neu eintippen muss, wenn man mal vergessen hat ein Pflichtfeld auszufüllen.

Derzeit sieht der Code so aus:

PHP-Code:
                       <td class="formfeld"><input type="text" name="beanst" size="40" tabindex="2"value="" />
        <
span class="meldung"><b></b></span>
        </
td
Um jetzt den Wert zu behalten hab mal folgendes probiert:
PHP-Code:
        <td class="formfeld"><input type="text" name="beanst" size="40" tabindex="2"value="
        <?php 
        
if ($fehler 'value'){ 
        echo 
$beanst
        } 
        
?>" />
        <span class="meldung"><b></b></span>
        </td>
Da behält er zwar den Wert im Textfeld drin - aber das Textfeld selbst kann an jeder beliebigen Stelle angeklickt und beschrieben werden (siehe angehängter Screenshot) ...

Weiss da jemand eine Lösung?
Angehängte Grafiken
Dateityp: jpg car_problem.jpg (38,0 KB, 402x aufgerufen)
Mit Zitat antworten
  #2 (permalink)  
Alt 11-12-2008, 12:43
Mercury1987
 Registrierter Benutzer
Links : Onlinestatus : Mercury1987 ist offline
Registriert seit: Apr 2007
Ort: Furschweiler
Beiträge: 79
Mercury1987 ist zur Zeit noch ein unbeschriebenes Blatt
Mercury1987 eine Nachricht über ICQ schicken
Standard

es gibt noch n attribut für text-felder: readonly
Mit Zitat antworten
  #3 (permalink)  
Alt 11-12-2008, 12:54
Lavingstar
 Member
Links : Onlinestatus : Lavingstar ist offline
Registriert seit: Oct 2004
Beiträge: 212
Lavingstar ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von Mercury1987
es gibt noch n attribut für text-felder: readonly
Und was soll mir das bringen? Damit sperr ich mir doch nur das Feld, das niemand eine Eingabe machen kann, was ja nicht den gewünschten Effekt bringt ...
Mit Zitat antworten
  #4 (permalink)  
Alt 11-12-2008, 12:57
Mercury1987
 Registrierter Benutzer
Links : Onlinestatus : Mercury1987 ist offline
Registriert seit: Apr 2007
Ort: Furschweiler
Beiträge: 79
Mercury1987 ist zur Zeit noch ein unbeschriebenes Blatt
Mercury1987 eine Nachricht über ICQ schicken
Standard

was ist denn sonst deine frage? ich hab daraus gelseen, dass du nit willst, dass jemand reinschreiben kann. ich nehm dann mal an, dass es dir nit passt, dass da soviel abstand dazwischen ist, oder was???
Mit Zitat antworten
  #5 (permalink)  
Alt 11-12-2008, 13:08
combie
 PHP Expert
Links : Onlinestatus : combie ist offline
Registriert seit: May 2006
Beiträge: 3.296
combie wird schon bald berühmt werden
Standard

Was du vorhast nennt sich "Affenformular".
Google gibt gerne Auskunft.
__________________
Wir werden alle sterben
Mit Zitat antworten
  #6 (permalink)  
Alt 11-12-2008, 13:08
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

if ($fehler = 'value') ist immer TRUE!
Mit Zitat antworten
  #7 (permalink)  
Alt 11-12-2008, 13:10
MelloPie
 PHP Master
Links : Onlinestatus : MelloPie ist offline
Registriert seit: Jan 2002
Ort: Hessen
Beiträge: 4.380
MelloPie ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von onemorenerd
if ($fehler = 'value') ist immer TRUE!
erstens das ud zweitens könntest Du auch ein register_globals Problem haben, das kann man nicht 100% erkennen, da Du nur ein code fragment gepostet hast
__________________
Beantworte nie Threads mit mehr als 15 followups...
Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25
Mit Zitat antworten
  #8 (permalink)  
Alt 11-12-2008, 13:13
Lavingstar
 Member
Links : Onlinestatus : Lavingstar ist offline
Registriert seit: Oct 2004
Beiträge: 212
Lavingstar ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von Mercury1987
was ist denn sonst deine frage? ich hab daraus gelseen, dass du nit willst, dass jemand reinschreiben kann. ich nehm dann mal an, dass es dir nit passt, dass da soviel abstand dazwischen ist, oder was???

Ich quote hier einfach nochmal mein Anliegen, weiss aber wirklich nicht was daran nicht verständlich ist:

Zitat:
Jetzt soll es aber so sein, dass der Wert der Felder behalten wird, sodass man nicht wieder alles neu eintippen muss, wenn man mal vergessen hat ein Pflichtfeld auszufüllen.

In Kurzform nochmals der Ablauf:

- Formular ausfüllen
- 1 Pflichtfeld aus Versehen vergessen auszufüllen
- Abschicken klicken
- Fehlermeldung erscheint und Formulareingaben werden zurückgesetzt / gelöscht

Und DAS (Formulareingaben werden zurückgesetzt / gelöscht) soll nicht passieren

- es soll eine Fehlermeldung erscheinen "Pflichtfelder wurden nicht ausgefüllt" aber die bereits eingegeben Daten sollen in den Textfeldern erhalten bleiben.
Mit Zitat antworten
  #9 (permalink)  
Alt 11-12-2008, 13:29
krel
 Registrierter Benutzer
Links : Onlinestatus : krel ist offline
Registriert seit: Nov 2006
Ort: Osnabrück
Beiträge: 424
krel ist zur Zeit noch ein unbeschriebenes Blatt
Standard

die ganzen Leerzeichen kommen daher, dass du hinter dem Value auch noch ne neue Zeile anfängst, wenn du das so machst, sollte es funktionieren, wobei es dabei keinerlei Prüfungen gibt
PHP-Code:
<td class="formfeld"><input type="text" name="beanst" size="40" tabindex="2"value="<?php echo $_POST['beanst']; ?>" />
 <span class="meldung"><b></b></span>
</td>
Mit Zitat antworten
  #10 (permalink)  
Alt 11-12-2008, 13:37
Lavingstar
 Member
Links : Onlinestatus : Lavingstar ist offline
Registriert seit: Oct 2004
Beiträge: 212
Lavingstar ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von krel
die ganzen Leerzeichen kommen daher, dass du hinter dem Value auch noch ne neue Zeile anfängst, wenn du das so machst, sollte es funktionieren, wobei es dabei keinerlei Prüfungen gibt
PHP-Code:
<td class="formfeld"><input type="text" name="beanst" size="40" tabindex="2"value="<?php echo $_POST['beanst']; ?>" />
 <span class="meldung"><b></b></span>
</td>
Das war des Rätsels Lösung ! :-)

Vielen Dank für die Hilfe!
Mit Zitat antworten
  #11 (permalink)  
Alt 11-12-2008, 14:34
Lavingstar
 Member
Links : Onlinestatus : Lavingstar ist offline
Registriert seit: Oct 2004
Beiträge: 212
Lavingstar ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Nachtrag als Hinweis: Funktioniert allerdings nur bei Textfelder, nicht bei Pulldownmenüs, die Options werden mit dieser Methode nicht übernommen.
Mit Zitat antworten
  #12 (permalink)  
Alt 11-12-2008, 15:07
Patrick_PQ
 Registrierter Benutzer
Links : Onlinestatus : Patrick_PQ ist offline
Registriert seit: Aug 2003
Beiträge: 480
Patrick_PQ ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Bei größeren Formularen wird das auf die Dauer ziemlich lästig - QuickForm oder Zend_Form bieten da eine gute Alternative - schau mal rein.

Für Zend_Form kannst du z.B. mit $form=new MyForm() ein komplettes Formular erstellen - welches du natürlich zuvor definiert hast - und dann einfach mit $form->populate($data) Werte übergeben - und fertig.

Filter und Validator sind bei beiden auch gleich mit drin, so dass sich Eingabeprüfung, Fehlermeldung und Vorbelung mit Default bzw. Usereingaben fast wie von selbst erledigt.

Gruß
Patrick
Mit Zitat antworten
  #13 (permalink)  
Alt 11-12-2008, 15:13
Lavingstar
 Member
Links : Onlinestatus : Lavingstar ist offline
Registriert seit: Oct 2004
Beiträge: 212
Lavingstar ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von Patrick_PQ
Bei größeren Formularen wird das auf die Dauer ziemlich lästig - QuickForm oder Zend_Form bieten da eine gute Alternative - schau mal rein.

Für Zend_Form kannst du z.B. mit $form=new MyForm() ein komplettes Formular erstellen - welches du natürlich zuvor definiert hast - und dann einfach mit $form->populate($data) Werte übergeben - und fertig.

Filter und Validator sind bei beiden auch gleich mit drin, so dass sich Eingabeprüfung, Fehlermeldung und Vorbelung mit Default bzw. Usereingaben fast wie von selbst erledigt.

Gruß
Patrick

Ui ... sieht auf den ersten Blick schonmal schön aus ... danke für den Tip!
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 21:10 Uhr.