php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2009

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 02.10.2009, 10:06  
Benutzer
 
Registriert seit: 01.10.2009
Beiträge: 76
PHP-Kenntnisse:
Anfänger
theSonGoku ist zur Zeit noch ein unbeschriebenes Blatt
Standard Eingabefeld deaktivieren

Hallo,

ich bin es nochmal.^^
Habe grade in recht kleines Problem bekommen.

Unzwar möchte ich, wenn ein Button gedrückt wurde, und nur dann, wenn eine bestimmte Varibable einen bestimmten Wert erreicht hat, ein Eingabefeld deaktivieren (disabled).

Wie mache ich das?

Der Button ist ein Login Button. Die Methode ist post. Die Variable heisst $_SESSION['poging'].

Wenn Nun der Button gedrückt wurde, und $_SESSION['poging'] >= 3 ist, dann soll das Eingabefeld "username" und das Eingabefeld "password", deaktiviert werden.


mfG
theSonGoku
theSonGoku ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 02.10.2009, 10:11  
Erfahrener Benutzer
 
Benutzerbild von ChillSn
 
Registriert seit: 28.07.2009
Beiträge: 267
PHP-Kenntnisse:
Fortgeschritten
ChillSn befindet sich auf einem aufstrebenden Ast
ChillSn eine Nachricht über Skype™ schicken
Standard

PHP-Code:
$disabled=($_SESSION['poging']>='disabled=disabled' '');
echo 
"<input type=\"text\" name=\"bla\" $disabled value=\"bla\">"
Gruß, ChillSn
__________________
PHP-Code:
while($humans>=2)
       
war(); 
ChillSn ist offline  
Alt 02.10.2009, 10:19  
Benutzer
 
Registriert seit: 01.10.2009
Beiträge: 76
PHP-Kenntnisse:
Anfänger
theSonGoku ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Zitat von ChillSn Beitrag anzeigen
PHP-Code:
$disabled=($_SESSION['poging']>='disabled=disabled' '');
echo 
"<input type=\"text\" name=\"bla\" $disabled value=\"bla\">"
Gruß, ChillSn
Vielen Dank, für die schnelle Antwort

Nur damit ich den Code richtig verstehe (ist ja der Sinn dabei, wenn man etwas "selber" programmiert^^).

Was bedeutet:

$disabled=($_SESSION['poging']>=3 ? 'disabled=disabled' : ");

Ist das wie eine If Abfrage, oder wieso kannst du einfach die Bedingung direkt in der Variable speichern?
Wieso steht ein ? hinter der 3?
'disabled=disabled'? Verstehe es, aber irgendwie auch nicht.^^


Wäre nett, wenn du den Code kurz erklären könntest. Danke


mfG
theSonGoku
theSonGoku ist offline  
Alt 02.10.2009, 10:25  
Erfahrener Benutzer
 
Benutzerbild von ChillSn
 
Registriert seit: 28.07.2009
Beiträge: 267
PHP-Kenntnisse:
Fortgeschritten
ChillSn befindet sich auf einem aufstrebenden Ast
ChillSn eine Nachricht über Skype™ schicken
Standard

Moin SonGoku,

Zitat:
Ist das wie eine If Abfrage, oder wieso kannst du einfach die Bedingung direkt in der Variable speichern?
jup, das nennt sich ternärer Operator (einfach mal googlen für genauere Beschreibung).
Hinter dem Fragezeichen steht der Wert, wenn die Bedingung wahr wird, hinter dem Doppelpunkt der Wert, wenn die Bedingung falsch ist (in dem Fall ein leerer String).

Du kannst das auch in einem ganz normalen if-else-Konstrukt abarbeiten. Ich finde o.g. Lösung ein wenig schlanker. Bei Bedingungen, denen mehrere Statements folgen, bietet sich allerdings wieder eine richtige if mit {} an.

Zitat:
'disabled=disabled'
Ist ganz normales HTML und bewirkt eben, dass das Feld für Nutzereingaben deaktiviert wird.

Gruß, ChillSn
__________________
PHP-Code:
while($humans>=2)
       
war(); 
ChillSn ist offline  
Alt 02.10.2009, 10:30  
Benutzer
 
Registriert seit: 01.10.2009
Beiträge: 76
PHP-Kenntnisse:
Anfänger
theSonGoku ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Danke für die Erklärung.

Einziges Problem ist nun noch, dass das Eingabefeld genau einen Wert zu spät gesperrt wird.
Und das Eingabefeld "username", wird nicht gesperrt. Es wird ein neues Eingabefeld erstellt.

Das mit dem Wert bekomme ich irgendwie hin. Das sollte nicht das grosse Problem sein.

Aber wie schaffe ich es, dass ich das breits existierende Eingabefeld, deaktiviere? Oder kann ich $disabled auch direkt in das Eingabefeld setzen?

mfG
theSonGoku
theSonGoku ist offline  
Alt 02.10.2009, 10:32  
Erfahrener Benutzer
 
Benutzerbild von taurus
 
Registriert seit: 01.11.2008
Beiträge: 821
PHP-Kenntnisse:
Anfänger
taurus ist zur Zeit noch ein unbeschriebenes Blatt
Standard

das teil nennt sich konditionaloperator.. nichts anderes als eine if anweisung nur in einer zeile
vor dem ? steht die Bedinung. ist diese wahr wird das nach dem ? ausgeführt.
ist diese NICHT wahr wird alles nach dem : ausgeführt

EDIT: heißt das nicht konditionaloperator?

Geändert von taurus (02.10.2009 um 10:45 Uhr). Grund: gott bin ich langsam ^^
taurus ist offline  
Alt 02.10.2009, 10:41  
Erfahrener Benutzer
 
Benutzerbild von ChillSn
 
Registriert seit: 28.07.2009
Beiträge: 267
PHP-Kenntnisse:
Fortgeschritten
ChillSn befindet sich auf einem aufstrebenden Ast
ChillSn eine Nachricht über Skype™ schicken
Standard

Zitat:
Einziges Problem ist nun noch, dass das Eingabefeld genau einen Wert zu spät gesperrt wird.
Dann liegt das daran, dass du die $_SESSION['poging'] an einer Stelle hochzählst, wo die Ausgabe bereits schon erfolgt ist und ein deaktivieren demnach nicht mehr möglich wird. Also, musst du die Variable vor der Ausgabe prüfen und evtl. $disabled setzen.

Zitat:
Aber wie schaffe ich es, dass ich das breits existierende Eingabefeld, deaktiviere? Oder kann ich $disabled auch direkt in das Eingabefeld setzen?
Das war doch von mir nur ein Beispiel gewesen. In dein existierendes Eingabefeld trägst du das dann eben so ein:

PHP-Code:
<input type="text" name="username" <?php echo $disabled?> value="bla">
Gruß, ChillSn


EDIT: @taurus: das sagte ich bereits oben und Konditionaloperator ist im übrigen nur ein Synonym für den ternären Operator.
EDIT2: @taurus: wie auch immer, wir meinen das Selbe!
__________________
PHP-Code:
while($humans>=2)
       
war(); 

Geändert von ChillSn (02.10.2009 um 10:50 Uhr). Grund: Taurus Langsamkeit :-)
ChillSn ist offline  
Alt 02.10.2009, 10:46  
Benutzer
 
Benutzerbild von kremser
 
Registriert seit: 25.02.2008
Beiträge: 55
PHP-Kenntnisse:
Anfänger
kremser befindet sich auf einem aufstrebenden Ast
Standard

so machst du das:
PHP-Code:
echo "<input type=\"text\" name=\"text\" value=\"\"".$disabled.">"
kremser ist offline  
Alt 02.10.2009, 10:57  
Erfahrener Benutzer
 
Benutzerbild von lstegelitz
 
Registriert seit: 07.09.2009
Beiträge: 3.891
PHP-Kenntnisse:
Fortgeschritten
lstegelitz ist ein sehr geschätzer Menschlstegelitz ist ein sehr geschätzer Menschlstegelitz ist ein sehr geschätzer Menschlstegelitz ist ein sehr geschätzer Mensch
Standard

Zitat:
Zitat von kremser Beitrag anzeigen
so machst du das:
PHP-Code:
echo "<input type=\"text\" name=\"text\" value=\"\"".$disabled.">"

PHP-Code:
echo '<input type="text" name="text" value="" '.$disabled.'>'
liest sich angenehmer...
__________________
Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.
lstegelitz ist offline  
Alt 02.10.2009, 10:58  
Erfahrener Benutzer
 
Benutzerbild von lazydog
 
Registriert seit: 02.04.2008
Beiträge: 4.034
lazydog befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von kremser Beitrag anzeigen
so machst du das:
PHP-Code:
echo "<input type=\"text\" name=\"text\" value=\"\"".$disabled.">"
Wie ich diese Escaperei hasse, ist doch so viel übersichtlicher:
PHP-Code:
echo "<input type='text' name='text' value='bla'" $disabled ">"
__________________
Gruss
L
lazydog ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine 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
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Eingabefeld mit timestamp -> durch Kalender bearbeitbar? BartTheDevil89 JavaScript, Ajax und mehr 6 07.06.2009 19:37
[Erledigt] zwei Formulare - ein Eingabefeld Jasper PHP Tipps 2009 6 09.02.2009 21:40
Dialogbox mit Eingabefeld - Javascript FBI HTML, Usability und Barrierefreiheit 1 28.08.2006 06:32
Eingabefeld und Button erzeugen PHP Tipps 2006 16 03.02.2006 00:10
zwei werte und ein eingabefeld PHP Tipps 2006 1 20.01.2006 16:21
Eingabefeld sperren, wenn Wert eingegeben wird Mike55 HTML, Usability und Barrierefreiheit 3 17.01.2006 19:24
magic_quotes_gpc deaktivieren PHP-Fortgeschrittene 2 04.01.2006 20:43
Zeilenumbruch im Mehrzeiligen Eingabefeld erzwingen PCServe PHP Tipps 2007 2 27.12.2005 11:34
Javascript funktionen deaktivieren! Kori HTML, Usability und Barrierefreiheit 16 10.07.2005 22:28
text aus eingabefeld filtern PHP Tipps 2005 13 29.03.2005 17:06
Werte in Eingabefeld setzten! Boennchen PHP Tipps 2005 3 19.02.2005 16:00
Frage zu Eingabefeld! Boennchen HTML, Usability und Barrierefreiheit 4 11.02.2005 18:35
Checkboxen deaktivieren HTML, Usability und Barrierefreiheit 6 15.09.2004 13:48
[Erledigt] eingabefeld HTML, Usability und Barrierefreiheit 4 26.08.2004 09:59
[Erledigt] text in eingabefeld einfügen u. umprogramierung einer taste PHP Tipps 2004 16 24.06.2004 12:01

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php eingabefeld, php eingabefeld sperren, php eingabefeld deaktivieren, html ausgegraute eingabefelder, eingabefeld deaktivieren, javascript eingabefeld deaktivieren, eingabefelder deaktivieren javascript, php feld sperren, disabled=\disabled\ eingabefeld, eingabefeld ausgrauen php, erstes eingabefeld aktivieren, deaktiviertes eingabefeld, php eingabefelder sperren, eingabefeld sperren php, php eingabe feld, html ausgegraut eingabefeld, eingabefeld php deaktivieren, eingabefeld deaktivieren html, eingabefelder deaktivieren html, javascript eingabefeld deaktiviert

Alle Zeitangaben in WEZ +1. Es ist jetzt 05:39 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum