Hallo

Ik wil een scriptje hebben dat in een tabel (checkboxtabel) kijkt naar een veld waarde. Als in de tabel de waarde 0 voorkomt, moet de checkbox niet aangevinkt zijn, is de waarde 1 dan moet het wel aangevinkt zijn.

<?
$host="localhost"; // Host name 
$username="*******"; // Mysql username 
$password="*******"; // Mysql password 
$db_name="********"; // Database name 
$tbl_name="checkboxtabel"; // Table name 

mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB");

$sql="SELECT * FROM $tbl_name";
$result=mysql_query($sql);


while($rows=mysql_fetch_array($result)){
?>
<table width="400" border="1" cellspacing="0" cellpadding="3">
<tr>
<td width="10%"><? echo $rows['naam']; ?></td>
//<td width="30%"><? echo $rows['waarde']; ?></td>


<td width="30%"><? if($rows['waarde']=="1"){ 
echo "<input type="checkbox" name="checkbox" CHECKED> kenmerk1 
";
} 
else { 
echo "<input type="checkbox" name="kenmerk1" > kenmerk1 ";"  
}  

?>
</tr>
</table>
<?
// close while loop 
}

// close connection 
mysql_close();

?>


Wat doe ik hier mis?
Verander dit:

echo "<input type="checkbox" name="checkbox" CHECKED> kenmerk1

in:

echo "<input type="checkbox" name="checkbox" checked="checked" /> kenmerk1

<?php
$result=mysql_query($sql) or die(mysql_error());
?> 


er kan iets verkeerd gaan met je qry..
wat voor type veld is waarde ? een text of een int field ?
tinyint (1)

wanneer ik de if constructie weghaal zie ik wel al de data van de query. Het moet echt iets zijn met mijn if constructie en mogelijk php en html door elkaar.

Iemand een gedacht?
als het een int is moet je je if aanpassen ...

if( $rows['waarde'] == 1) {

}

"1" zou een string betekenen
wanneer ik de if constructie verander in

<? if($rows['waarde']==1){
echo "goed" ;
}
else
{ echo "fout";
}
?>


dan duid hij goed aan wie 1 en 0 is. Hoe krijg ik hier nu een checkbox aan gekoppeld?
eh.. ik doe het zelf altijd zo.. misschien werkt t (A)

<?

echo "<input type=\"checkbox\" name=\"jenaam\" value=\"jevalue\" checked=\"".($statement == 1) ? "checked" : "" ."\">";

?>

niet getest, maar volgens mij zou t moeten werken..

Reageren