 |
|
พอดีทำเป็นแบบรับรับค่า้ป็นวนลูปเอา แต่ทำไมค่าแรกถึงเท่ากับคะ
งง รายชื่อที่แสดงรายการยังไม่ถูกเพราะค่าที่รับไปมันไม่ตรงกัน

Code (PHP)
<html>
<body>
<?
$N_Condition = 3;
$N_Rules =8;
$condition=array("srt"=>array("พัดลม","หอพักสตรี","หอพักชาย"),
"truth"=>array("11110000","11001100", "10101010")
);
$Solutions=array("srt"=>array("หอสตรีตระกูลฟลุ๊ค",
"หอชายวรัญญา",
"หอพักสตรีกำนัน",
"หอพักชายไอดิน",
"หอพักสตรีนันทกาญจน์"),
"truth"=>array ("111010100",
"000110010",
"010101000",
"000110010",
"001100000"));
?>
<table border="1" cellspacing="0" cellpadding="2">
<form action="DS_Table.php" method="post">
<tr bgcolor="#D4DEC4">
<td width="200" ><center>รายการคุณสมบัติ</center></td>
<td width="50" align="center">ต้องการ</td>
<td width="50" align="center">มีไม่มีก็ได้</td>
</tr>
<? for($t=0;$t<$N_Condition;$t++){?>
<tr>
<td bgcolor="white" ><? echo $condition["srt"][$t]?></td>
<td align="center"><input name="q[]" type="checkbox" value="1" /> </td>
<td align="center"><input name="q[]" type="checkbox" value="0" /> </td>
</tr>
<?
}?>
<tr><td colspan="3" align="center"><input name="" type="submit" value="ส่งค่า" /></td></tr>
</form>
<?
echo "ค่าที่ส่งตัวแปรอาเรย์[0]=".$_POST["q"][0]." ,[1]=".$_POST["q"][1]." ,[2]=".$_POST["q"][2]."</br>";
for($r,$code1=0;$r<count($_POST["q"]);$r++){
$answer=$_POST["q"][$r];
if($answer==""){$answer=0;}
echo "<br>answer: ".$answer;
$code1=($code1<<1)|($answer!="1"); /*ไม่แน่ใจว่าถูกไหมลองดัดแปลงภาษา C */
}
if ($code1==$N_Rules){
echo"<tr><td colspan=\"3\">So, you don't have a problem then?</td></tr>";
}else {
echo"<tr><td colspan=\"3\" bgcolor=\"#D4DEC4\" align=\"center\">Solutions</td></tr>";
$s=0;
foreach($Solutions["srt"] as $Solutions["srt"][$s]){
if($Solutions["truth"][$s][$code1]=="1"){
echo "<tr>";
echo "<td colspan=\"3\">".$Solutions["srt"][$s]."</td>";
echo "</tr>";
}$s++;
}
}
?>
</table>
</body>
</html>
|
ประวัติการแก้ไข 2013-07-22 01:48:55
 |
 |
 |
 |
Date :
2013-07-22 01:46:43 |
By :
nune.supaporn |
|
 |
 |
 |
 |
|
|
 |