tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
9
ZUGRIFFE
24084
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Zyklon Zyklon ist offline Mitglied
    Registriert seit
    Mar 2004
    Beiträge
    13
    Hi,
    ich habe folgendes Problem:

    Ich übergebe mit HTML ein Formular mit einer kleinen Auswahlliste (Radiobuttons)

    Wie kann ich überprüfen welcher Butoon ausgewählt wurde ?
    Die Radiobuttuns sehen folgendermaßen aus:

    Code :
    1
    
    <input type="radio" name="kategorie" value="tools">
    Code :
    1
    
    <input type="radio" name="kategorie" value="sonstiges">

    wie kann ich jetzt auf der Seite auf die die Variablen geschickt werden prüfen welcher
    Radiobutton angeklickt wurde?
    Bei Textfeldern steht ja normalerweiße der "name" später als $name bereit und kann weiterverarbeitet werden.

    Wie ist das bei Radiobuttons ?

    Ich habe schon versucht auf der Zielseite den Inhalt des Radiobuttons mit

    Code :
    1
    
    echo $_POST['kategorie'];

    auszugeben um zu überprüfen was in der Variable steht.
    Leider bis jetzt ohne Erfolg
    Geändert von Zyklon (28.09.05 um 14:50 Uhr)
     
    Bigger is better

  2. #2
    DeeJay-Luke DeeJay-Luke ist offline Mitglied Silber
    Registriert seit
    Feb 2004
    Beiträge
    78
    <input type="radio" name="kategorie" value="sonstiges" CHECKED />



    Gruss


    Das muss währe die Abfrage

    PHP-Code:
    <?php 
    if($_POST["kategorie"] == "hier_steht_was"
    {
    echo 
    'CHECKED';
    }
    ?>
    Geändert von DeeJay-Luke (28.09.05 um 14:54 Uhr)
     

  3. #3
    Banzai Banzai ist offline Rookie
    Registriert seit
    Dec 2004
    Beiträge
    6
    Hi Zyklon,

    wahrscheinlich bestätige ich DeeJay nur...

    Um einen Radio-Button zu überprüfen, muss nur die Existenz der Variablen im $_POST-Array geprüft werden, der Inhalt ist standardmäßig immer 'on', wenn der Radio ausgewählt ist.

    PHP-Code:
     if( isset( $_POST["radiobuttonname"]) )
    {
    // Code, wenn Radio ausgewählt wurde....
    :
    :



    Banzai

    Der Urinstinkt ist doppeldeutig....
     

  4. #4
    Zyklon Zyklon ist offline Mitglied
    Registriert seit
    Mar 2004
    Beiträge
    13
    Danke für die Antworten!
    Was ich jedoch noch nicht ganz verstehe ist:

    Mit dem Namen des Radiobuttons verhindert mal ja das bei Radiobuttons mit gleichem Namen eine Mehrfachauswahl.

    Ich habe gedacht das dem "name" in "value" die Variable zugewiesen wird die in "value" steht.


    Was bedeutet das "checked" genau ?

    DeeJay könntest du mir dein Beispiel anhand meines Codes oben erklären?


    Ich hoffe ich konnte mein Defizit an Wissen gut darlegen
     
    Bigger is better

  5. #5
    Avatar von dsturm
    dsturm dsturm ist offline Mitglied Gold
    Registriert seit
    May 2003
    Beiträge
    222
    checked oder besser checked="checked" bedeuted, im HTML-Code, das dieser Radio-Button schon vorgewählt ist. Falls man im Code mehrere Radio-Buttons mit gleichem 'name' als checked markiert, wird der letzte 'checked' Radio-Button markiert...

    Um jetzt im PHP-Skript einen Radio-Button zu markieren, der davor im Formular ausgewählt und somit übergeben wurde, schreibst du einfach

    PHP-Code:
    if ($_POST['kategorie'] == 'sonstiges') {
         echo 
    '<input type="radio" name="kategorie" value="sonstiges" checked="checked">';
    } else {
         echo 
    '<input type="radio" name="kategorie" value="sonstiges">';

    oder kürzer:

    PHP-Code:
    echo '<input type="radio" name="kategorie" value="sonstiges"';
    echo (
    $_POST['kategorie'] == 'sonstiges') ? 'checked="checked">' ''// () ? : ; bedeutet (Überprüfung innerhalb der Klammer) ? (wenn true) : (wenn falsch);
    echo '<input type="radio" name="kategorie" value="sonstiges">'
     

  6. #6
    Zyklon Zyklon ist offline Mitglied
    Registriert seit
    Mar 2004
    Beiträge
    13
    Ok Danke!

    Mein eigentliches Problem handelt aber nicht da von das ich einen Radiobutton vorauswählen
    will sondern das ich wissen will welcher Radiobutoon auf der vorherigen Seite ausgewählt wurde.

    So nach dem Motto:

    Code :
    1
    2
    3
    
    if( $Radiobutton == "sonstiges")
     
    echo " Sie haben sonstiges ausgewählt";

    oder sowas in der Art halt!

    Das ich über eine Variable den Wert den jeder Radiobutton hat ausgelesen bekomme

    War wahrscheinlich mein Fehler das ihr mein Problem verkannt habt!
    Versuche mich in Zukunft eindeutiger Auszudrücken
     
    Bigger is better

  7. #7
    Avatar von Dr Dau
    Dr Dau Dr Dau ist offline ich wisch hier durch
    Registriert seit
    Feb 2005
    Ort
    hinterm Mond gleich Links
    Beiträge
    6.160
    Blog-Einträge
    4
    Hallo!

    Versuch es mal so.....
    formular.html
    HTML-Code:
    <form action="check.php" method="post">
    <input type="radio" name="check" value="Tools"> Tools<br>
    <input type="radio" name="check" value="Sonstiges"> Sonstiges<br>
    <input type="submit" name="auswahl" value="Abschicken">
    </form>
    check.php
    PHP-Code:
    <?php
    if($_POST['auswahl'] == true) {
         if(
    $_POST['check'] == "Tools") {
             echo 
    "weitere Anweisungen bei Auswahl <b>Tools</b>";
         }
         if(
    $_POST['check'] == "Sonstiges") {
             echo 
    "weitere Anweisungen bei Auswahl <b>Sonstiges</b>";
         }
         if(
    $_POST['check'] == "") {
             echo 
    "weitere Anweisungen wenn <u>nichts</u> ausgewählt wurde";
         }
    }
    ?>
    Ich habe es zwar nicht getestet, aber ich meine so müsste es funktionieren.

    Gruss Dr Dau
     
    Schri-Schra-Schrödi *g*
    mehrspaltiges/zeiliges Seitenlayout mit DIV's und CSS
    Dinge, die mit Tabellen besser klappen als mit CSS
    Ausgabe von Datum/Zeit unabhängig von der Server Zeitzone [php]
    Meine Links zum Thema Linux (Last update: 29.10.2011)
    Kein Busen ist so flach wie das Niveau dieser Party!
    ----
    Alte Weisheit: wer uns in den Arsch kriecht wird beschissen!
    ----
    Ich habe 3 Kinder und kein Geld!
    Warum kann ich nicht keine Kinder haben und 3 Geld?! (Homer Jay Simpson)

  8. #8
    Zyklon Zyklon ist offline Mitglied
    Registriert seit
    Mar 2004
    Beiträge
    13
    Problem gelöst!

    Für alle die ein ähnliches Problem haben hier meine Lösung:

    die radiobuttons sehen folgendermaßen aus

    Code :
    1
    2
    
    <input type="radio" name="kategorie" value="fun">
    <input type="radio" name="kategorie" value="tools">

    formular wird mit "Post" übergeben.

    Auf der Zielseite kann man die Radiobuttons mit Beispielsweiße

    Code :
    1
    
    $auswahl = $_REQUEST['kategorie'];

    auslesen. In $auswahl steht dann entweder "fun" oder "tools" drin.

    Jetzt kann man entweder mit IF oder Switch/Case
    mit der Variablen arbeiten.

    Ob das die optimale Lösung ist bleibt mal dahin gestellt!
    Auf jeden Fall funktioniert es zu meiner Zufriedenheit.


    Danke an alle die versucht haben mir zu helfen!

    Gruß Zyklon
     
    Bigger is better

  9. #9
    Avatar von Dr Dau
    Dr Dau Dr Dau ist offline ich wisch hier durch
    Registriert seit
    Feb 2005
    Ort
    hinterm Mond gleich Links
    Beiträge
    6.160
    Blog-Einträge
    4
    Du solltest aber nicht vergessen auch zu prüfen ob $_REQUEST['kategorie'] evtl. leer ist..... denn es könnte ja auch jemand auf den Submit Button drücken ohne etwas auszuwählen.
    Bei meiner Variante habe ich dieses berücksichtigt.

    [edit]
    Ein $_REQUEST kann aber auch ein $_GET annehmen..... somit währe eine Anweisung auch ohne dem Formular möglich..... sprich, es könnte jemand die Anweisung per URL übermitteln.
    [/edit]
    Geändert von Dr Dau (30.09.05 um 20:09 Uhr)
     
    Schri-Schra-Schrödi *g*
    mehrspaltiges/zeiliges Seitenlayout mit DIV's und CSS
    Dinge, die mit Tabellen besser klappen als mit CSS
    Ausgabe von Datum/Zeit unabhängig von der Server Zeitzone [php]
    Meine Links zum Thema Linux (Last update: 29.10.2011)
    Kein Busen ist so flach wie das Niveau dieser Party!
    ----
    Alte Weisheit: wer uns in den Arsch kriecht wird beschissen!
    ----
    Ich habe 3 Kinder und kein Geld!
    Warum kann ich nicht keine Kinder haben und 3 Geld?! (Homer Jay Simpson)

  10. #10
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Es ginge aber noch einfacher:
    PHP-Code:
    <?php

        
    if( isset($_POST['kategorie']) && !empty($_POST['kategorie']) ) {
            echo 
    $_POST['kategorie'];
        } else {
            echo 
    'Es wurde keine Option ausgewählt!';
        }

    ?>
     
    Markus Wulftange

Ähnliche Themen

  1. Antworten: 1
    Letzter Beitrag: 16.05.10, 23:11
  2. Radiobutton - Value auslesen
    Von cuaro im Forum Javascript & Ajax
    Antworten: 4
    Letzter Beitrag: 13.04.10, 14:44
  3. Antworten: 4
    Letzter Beitrag: 20.03.07, 10:28
  4. Antworten: 3
    Letzter Beitrag: 09.02.05, 18:27
  5. Flash Formular >Chechbox/Radiobutton< mit PHP auslesen?
    Von ruffnexx im Forum Flash Plattform
    Antworten: 7
    Letzter Beitrag: 23.02.04, 21:44