einfache if abfrage
zsoerenm
- php
Hallo zusammen
dieses kleine script scheint nicht zu funktionieren
if (!empty($submit) && empty($_GET['bewertung'])) {
print "Also Abstimmen solltest du vorher schon";
}
wenn ich auf den submit button klicke aber nichts übergebe (keinen radiobutton zuvor anklicke) passiert nichts... es wird nichts ausgegeben...
ändere ich && in || wird von anfang an print ausgegeben also "empty($_GET['bewertung']))" scheint zu funktionieren.
was ist also an !empty($submit) falsch?
Gruß Sören
Hi,
was ist also an !empty($submit) falsch?
wo und womit hast Du diese Variable initialisiert?
Cheatah
HI
wo und womit hast Du diese Variable initialisiert?
ganz einfach mit:
echo '<td><input type="submit" value="Abstimmen"></td>';
Gruß Sören
Hi,
wo und womit hast Du diese Variable initialisiert?
ganz einfach mit:
echo '<td><input type="submit" value="Abstimmen"></td>';
das gibt einen HTML-Code aus. Nirgendwo hat dies auch nur im Ansatz etwas mit Variablen zu tun.
Cheatah
HI
wo und womit hast Du diese Variable initialisiert?
ganz einfach mit:
echo '<td><input type="submit" value="Abstimmen"></td>';
Also damit hast du ein submit Button mit Wert Abstimmen erzeugt. Aber die variable hat noch keinen Namen:
<input type='submit' name='submit' value='Abstimmen'>
würde nun ein variable $_GET['submit'] erzeugen.
Diese ist allerdings niemals empty, da du ihr ja den Wert Abstimmen gegeben hast.
Die Prüfung müsste dann wohl eher in der Art
if(isset($_GET['submit']) && !empty($_GET['bewertung']))
sein. Mit dem ersten Teil fragst du ab, ob Daten deines Scripts vorhanden sind. Mit der Zweiten ob ein Text eingegeben wurde.
Gruss
Andy
HI
<input type='submit' name='submit' value='Abstimmen'>
würde nun ein variable $_GET['submit'] erzeugen.
Nein. Wie denn bitte?
Hi,
<input type='submit' name='submit' value='Abstimmen'>
würde nun ein variable $_GET['submit'] erzeugen.
wann bitte geht es endlich in eure Köppe rein, dass Parameter
*** NICHTS ***
mit Variablen zu tun haben? Die einzige Variable, die dort zu finden ist, lautet $_GET. Nein, sie lautet auch *nicht* $_GET['submit'].
Cheatah
wann bitte geht es endlich in eure Köppe rein, dass Parameter
*** NICHTS ***
mit Variablen zu tun haben? Die einzige Variable, die dort zu finden ist, lautet $_GET.
Ok richtig, dann kriegst du eben ein Array $_GET das einen Wert beim Key "submit" hat.
Und was hat dies nun mit Parameter zu tun?
Hi,
Und was hat dies nun mit Parameter zu tun?
die assoziativen Arrays $_GET, $_POST und $_REQUEST werden aus Request-Parametern gefüllt. Dass diese als Parameter bezeichnet werden, entstammt der Konvention.
Cheatah
echo $begrüßung;
<input type='submit' name='submit' value='Abstimmen'>
würde nun ein variable $_GET['submit'] erzeugen.
Diese ist allerdings niemals empty, da du ihr ja den Wert Abstimmen gegeben hast.
Das wäre gelogen, denn der IE überträgt kein name-value-Pärchen eines Submit-Buttons, wenn das Formular nicht mit einem solchen sondern mit Enter abgesendet wurde.
echo "$verabschiedung $name";
Das wäre gelogen, denn der IE überträgt kein name-value-Pärchen eines Submit-Buttons, wenn das Formular nicht mit einem solchen sondern mit Enter abgesendet wurde.
Echt? Das wuste ich gar nicht. Danke für die Bemerkung. Werde ich zukünftig berücksichtigen.
Hi,
Echt? Das wuste ich gar nicht. Danke für die Bemerkung. Werde ich zukünftig berücksichtigen.
bezüglich diverser Formularelemente (<input type="image">, <button>) solltest Du den IE immer mit ausgiebigen Tests beglücken.
Cheatah
if (!empty($submit) && empty($_GET['bewertung'])) {
print "Also Abstimmen solltest du vorher schon";
}
Was soll denn $submit sein?
Man kann ja mehrere Submit- Buttons haben:
<input type='reset' value='Werte zurücksetzen'>
<input type='submit' class='aen [display_aen]' name='p802_submit_aen' value='ändern' accesskey="a">
<input type='submit' class='neu [display_neu]' name='p802_submit_neu' value='neu' accesskey="n">
<input type='submit' class='neu [display_kop]' name='p802_submit_neu' value='kopieren' accesskey="k">
<input type='submit' class='loe [display_loe]' name='p802_submit_loe' value='löschen' accesskey="l">
Kalle
Hallo,
if (!empty($submit)
hier holst du deine Variablen noch einfach aus dem luftleeren Raum, ...
&& empty($_GET['bewertung'])) {
... und hier weißt du plötzlich, dass du sie aus dem $_GET-Array holen möchtest. Warum nicht gleich so?
Ciao,
Martin
Hallo,
&& empty($_GET['bewertung'])) {
... und hier weißt du plötzlich, dass du sie aus dem $_GET-Array holen möchtest. Warum nicht gleich so?
Naja, ich zaubere sowas auch oft aus $_POST[]. Da sollte man schon wissen, in welchen Zylinder man greift. Nicht überall sind weisse Kaninchen oder brauchbare Parameter drin.
Kalle
HI
Danke an alle die mir geholfen haben... kleiner dummer Fehler^^
klappt jetzt wunderbar :)
Gruß Sören