ช่วยเขียนโค้ดseartแบบนี้ให้ด้วยครับ คือต้องการsearhcข้อมูลจากฐานข้อมูลโดยใช้ค่าตัวใดตัวหนึ่งในการ การ search หรือหลายค่า
นี่คือโค้ดที่เขียนได้ครับ
Code (PHP)
<?
if ($send == "")
{?>
<form method = "POST" action = "<? echo $PHP_SELF ?>">
<h3><center><font color="#CD2626">Please enter your search</font></h3>
<table border="1" align="center" cellpadding="5" cellspacing="1" bordercolor="#7FFF00" bgcolor="#7FFF00">
<tr>
<td>aaaaaa :</td>
<td><input type="text" name="aaaaaa" bacgrow /><c></td>
</tr>
<tr>
<td>bbbbb:</td>
<td><input type="text" name="bbbbb"><c></td>
</tr>
<tr>
<td>ccccc:</td>
<td><input type="text" name="ccccc"><c></td>
</tr>
<tr>
<td colspan="2">ddddd :
<input type="radio" name="radddddd" value="0" > x<c>
<input type="radio" name="radddddd" value="1" > y<c>
</td>
</tr>
<tr>
<td colspan="2">eeeee:
<input type="radio" name="radeeeee" value="0" > www<c>
<input type="radio" name="radeeeee" value="1" > bbb<c>
</td>
</tr>
<tr>
<td colspan="2">fffff:
<input type="radio" name="radfffff" value="0" >mmm<c>
<input type="radio" name="radfffff" value="1" > nnnn<c>
</td>
</tr>
</table>
<div colspan="2" align="center">
<h2><input name="send" type="submit" value="search" /></h2><p>
</div>
</form>
<?
}
else
{ if ($_POST['aaaaaa']== "" && $_POST['bbbbb']== "" && $_POST['ccccc'] == "")
{ echo "You are not complete";
}
else
{ $dbcon = mysql_connect("localhost","root","1234");
if (!$dbcon){ die('Could not connect: '. mysql_error());}
mysql_select_db("sadb", $dbcon);
if ($_POST['aaaaaa']!= ""){
$conaaaaaa = " aaaaaa='".$_POST['aaaaaa']."' ";
echo $conaaaaaaN;
}else if ($_POST['bbbbb']!= ""){
$conbbbbb = " bbbbb='".$_POST['bbbbb']."' ";
echo $conbbbbb;
}else if($_POST['ccccc'] != ""){
$conccccc = " ccccc='".$_POST['ccccc']."' ";
echo $conccccc;
}
//checked
echo $_POST['radddddd'];
echo $_POST['radeeeee'];
echo $_POST['radfffff'];
#$conWhere="where";
$sql = "select * from qqqq where aaaaaa ='".$_POST['aaaaaa']."' OR bbbbb ='".$_POST['bbbbb']."' OR ccccc='".$_POST['ccccc']."';";
$result = mysql_query($sql);
$numfiel = mysql_num_fields($result);
echo "<center><table width=\"600\" border=\"1\" cellspacing=\"0\" cellpadding=\"0\" bordercolor=\"black\" bgcolor=\"#CAFF70\">";
echo "<tr bgcolor = \"#66CD00\">";
for ($i = 0;$i < $numfiel;$i++)
echo"<th><font size = '2'>".mysql_field_name($result,$i)."<font>";
while ($row = mysql_fetch_array($result))
{
echo "<tr>";
echo "<td>".$row['aaaaaa']."</td>";
echo "<td>".$row['ddddd']."</td>";
echo "<td>".$row['bbbbbe']."</td>";
echo "<td>".$row['eeeee']."</td>";
echo "<td>".$row['ccccc']."</td>";
echo "<td>".$row['fffff']."</td>";
}
echo "</table>";
mysql_close($dbcon);
}
}
?>
Date :
2010-05-28 16:27:49
By :
หมูแดง
ขอบคุณสำหรับคำตอบนะครับแต่ว่าผมไม่ค่อยเข้าใจอันที่ลิ้งค์ให้ดูเลยครับ
ผมต้องมาเพิ่มหรือแก้ไขตรงไหรช่วบบอกด้วยเถอะครับ
แล้วโค้ดที่ผมเขียนมาถูกหรือป่าวครับ
ช่วยแนะนำด้วยครับมือใหม่พึ่งหัดเขียน
ขอบคุณครับ
Date :
2010-05-30 19:25:01
By :
หมูแดง
บรรทัดนี้หมายถึงอะไรหรือครับแล้วidนำไปใช้ทำอะไร
Code (PHP)
th width="141" align="left" bgcolor="#FFFFFF"><input name="num[]" type="checkbox" id="num[]" value="4"
และก็อันนี้ด้วยครับ
Code (PHP)
<?=(in_array('4',$num)?'checked':'')?>/>
Date :
2010-05-30 19:29:17
By :
หมูแดง
คือตอนนี้ตอนนี้searchได้แค่ใช้ค่า aaaaaa bbbbb และ ccccc
Date :
2010-05-30 20:04:02
By :
หมูแดง
Code (PHP) ที่ต้องใช้name="num[]" เพราะ เราต้องบอกมันว่าเราจะเก็บค่านี้แบบ array เวลา post ไป ถ้าเราใช้ name="num" เวลาโพสไปค่าที่ได้จะไม่ใช่ array และ ค่าที่ได้จะเท่ากับค่าสุดท้ายที่ถูกติ๊กเพียงค่าเดียว เช่น ถ้าเราติ๊กหมดเลย ค่าที่ถูกส่งมา จะเท่ากับ 4 ส่วนเรื่อง id ไม่จำเป็นต้องมีก็ได้ครับ id มีประโยชน์ตอนใช้ javascript อ้างถึง id ครับ
<input name="num[]" type="checkbox" id="num[]" value="1">
<input name="num[]" type="checkbox" id="num[]" value="2">
<input name="num[]" type="checkbox" id="num[]" value="3">
<input name="num[]" type="checkbox" id="num[]" value="4">
Code (PHP) ส่วนคำสั่งนี้ใช้เช็คค่าใน array ว่ามีค่า 4 มั้ย ถ้ามีก้อให้ติ๊กที่ checkbox ใช้เช็คตอนที่ post มาแล้ว เพื่อบอกผู้ search ว่าเลือกอันไหนไป จะได้ไม่งง
<?=(in_array('4',$num)?'checked':'')?>/>
Date :
2010-05-31 02:17:33
By :
kerb
กำหนด value ให้ select ก่อนครับ แล้วเอาไปทำเงื่อนไข ความจริงคุณไม่ต้องทำ list box ก็ได้ แค่ทำ text box แต่ค้นหา ได้ในคำค้นหาของแต่ละคนที่จะกรอก เหมือน google อะครับ นี่แหละคือ search ตัวจริง ผมก็ไม่รู้นะทำไมจะต้องเพิ่มจุดๆนึงเข้าไปทั้งๆที่ ผลของการทำงานมันก็เหมือนกัน select * from where like %......................%;
Date :
2010-05-31 04:12:02
By :
Manussawin
Load balance : Server 05