Mysql und Checkbox

  • Hallo, hab folgednes Problemm.

    In einem Formular gebe ich einen Datensatz aus einer MySQL tabelle aus und es werden gleichzeitig checkboxen erstellt.

    PHP
    while($dsaz = mysql_fetch_assoc($res))
        {
            echo "<input type='checkbox' name='box'";
            echo "value= '" . $dsaz['id'] . "'/>";
            echo $dsaz['name'] . " ";
            echo $dsaz['vorname'] . " ";
            echo $dsaz['ort'] . "<br/> ";        
        }

    so passiert dies, es läuft auch ohne probleme.
    Wenn man hier die Einige checkboxeyx auswählt, kann man dieses Formular via button absenden und auf der nächsten Seite werde die ausgewählten datensätze angezeigt, was aber nicht der Fall ist.

    so versuch ich das:

    PHP
    $db = "SELECT val_txt FROM user WHERE id = '" . $dsaz['box'] . "'";
        $res = mysql_query($db) or die (mysql_error());
        $num = mysql_num_rows($res);
        $dsaz = mysql_fetch_assoc($res);
    
        if($num==0)
        {
            echo $dsaz['name'] . "<br/>";        
        }

    funzt aber nicht.

    Kennt jemand einen guten Tipp??

  • sorry ich schon wieder,
    hab n fehler im post

    die Abfrage der Checkbox sieht so aus:

    PHP
    $db = "SELECT name FROM ff_bohrer_text WHERE id = '" . $dsaz['box'] . "'";
    	$res = mysql_query($db) or die (mysql_error());
    	$num = mysql_num_rows($res);
    	$dsaz = mysql_fetch_assoc($res);
    
    	if($num==0)
    	{
    		echo $dsaz['name'] . "<br/>";		
    	}
  • Da bei Checkboxen mehrere ausgewählt werden können, brauchst du schon mal ein Array:
    echo "<input type='checkbox' name='box[]' value= '" . $dsaz['id'] . "'/>";

    Dann kannst du dieses mit foreach durchlaufen.
    Aber deine Werte stehen nicht in $dsaz['box'] sondern in $_POST['box'] (zumindest bei method="post").

  • Bin noch n anfänger was php und mysql angeht.
    Kann mir vlt jemand starthilfe diesbezüglich geben?

  • Ausgabe müsste so ausehen

    PHP
    while($dsaz = mysql_fetch_assoc($res))
    {
        echo '<input type="checkbox" name="box[]" value="' . $dsaz['id'] . '" />';
        echo $dsaz['name'] . " " . $dsaz['vorname'] . " " . $dsaz['ort'] . "<br/> ";        
    }

    Dann muss das <form> was drum rum ist method="post" haben und dann könntest du es so auslesen auf der Seite wo es hingeht:

    ist alles trocken geschrieben, also einfach mal ausprobieren und hoffen das es so funktioniert.

    Gruß crAzywuLf :D

    2 Mal editiert, zuletzt von crAzywuLf (5. Februar 2010 um 11:10)