การสร้างฟอร์มค้นหา และให้แสดงผลการค้นหาในหน้าเดียวกัน ด้วย PHP
เมื่อครั้งที่แล้ว พูดถึงเรื่อง การใช้ javascript สร้างฟอร์มอัตโนมัติ แล้วส่งค่าไปยัง PHP คราวนี้จะเป็นการนำค่าที่ส่งมาตรวจสอบ และถ้าถูกต้องให้แสดงช่องสำหรับให้พิมพ์คำค้นหา และให้แสดงผลการค้นหาในหน้าเดียวกัน
ในตัวอย่างนี้ ไม่ได้แสดงวิธีการค้นหาคำในฐานข้อมูล แต่แสดงคำค้นหาเท่านั้น การค้นหาในฐานข้อมูลเป็นเรื่องพื้นฐานที่ควรรู้อีกเรื่องหนึ่ง
โค้ด PHP การตรวจสอบคำ การแสดงฟอร์มการค้นหา และแสดงผลในหน้าเดียวกัน
<?php
if ($isPwdOK == ""){
$thisPwd = $_POST["myText"];
}
if($thisPwd == "นฤมล" || $isPwdOK == "yes"){
echo "<H2>ยินดีต้อนรับ คุณ$thisPwd</H2>";
?>
<h2>ค้นหา</h2>
<form name="search" method="post" action="<?=$PHP_SELF?>">
ข้อมูลที่ต้องการค้นหา: <input type="text" name="find" />
<input type="hidden" name="searching" value="yes" />
<input type="hidden" name="isPwdOK" value="yes" />
<input type="hidden" name="thisPwd" value= "<?=$thisPwd ?>" />
<input type="submit" name="search" value="Search" />
</form>
<?php
}else{
echo "<span style=\"color: #f00;\">รหัสไม่ถูกต้อง</span><br><br>";
echo "<input type=button onClick=\"location.href='index.php'\" value='กลับเมนูหลัก'>";
exit;
}
//ตรวจสอบว่ามีการกดปุ่มส่งฟอร์มแล้วหรือไม่ ถ้ากดแล้วให้แสดงต่อไปนี้
if ($searching =="yes")
{
echo "<h2>แสดงผลการค้นหา</h2><p>";
//ตรวจสอบว่า ได้มีการพิมพ์ข้อความที่ต้องการค้นหาหรือไม่
if ($find == "")
{
echo "<p>ยังไม่ได้พิมพ์ข้อความสำหรับค้นหา";
exit;
}
}
//แสดงคำค้นหา สามรถนำคำนี้ไปค้นหาในฐานข้อมูลต่อไป
echo "<b>คำค้น:</b> " .$find;
echo "<br><br><input type=button onClick=\"location.href='index.php'\" value='กลับเมนูหลัก'>";
?>
แสดงผล
รหัสที่พิมพ์เข้ามาไม่ถูกต้อง
ในตัวอย่างนี้ ไม่ได้แสดงวิธีการค้นหาคำในฐานข้อมูล แต่แสดงคำค้นหาเท่านั้น การค้นหาในฐานข้อมูลเป็นเรื่องพื้นฐานที่ควรรู้อีกเรื่องหนึ่ง
โค้ด PHP การตรวจสอบคำ การแสดงฟอร์มการค้นหา และแสดงผลในหน้าเดียวกัน
<?php
if ($isPwdOK == ""){
$thisPwd = $_POST["myText"];
}
if($thisPwd == "นฤมล" || $isPwdOK == "yes"){
echo "<H2>ยินดีต้อนรับ คุณ$thisPwd</H2>";
?>
<h2>ค้นหา</h2>
<form name="search" method="post" action="<?=$PHP_SELF?>">
ข้อมูลที่ต้องการค้นหา: <input type="text" name="find" />
<input type="hidden" name="searching" value="yes" />
<input type="hidden" name="isPwdOK" value="yes" />
<input type="hidden" name="thisPwd" value= "<?=$thisPwd ?>" />
<input type="submit" name="search" value="Search" />
</form>
<?php
}else{
echo "<span style=\"color: #f00;\">รหัสไม่ถูกต้อง</span><br><br>";
echo "<input type=button onClick=\"location.href='index.php'\" value='กลับเมนูหลัก'>";
exit;
}
//ตรวจสอบว่ามีการกดปุ่มส่งฟอร์มแล้วหรือไม่ ถ้ากดแล้วให้แสดงต่อไปนี้
if ($searching =="yes")
{
echo "<h2>แสดงผลการค้นหา</h2><p>";
//ตรวจสอบว่า ได้มีการพิมพ์ข้อความที่ต้องการค้นหาหรือไม่
if ($find == "")
{
echo "<p>ยังไม่ได้พิมพ์ข้อความสำหรับค้นหา";
exit;
}
}
//แสดงคำค้นหา สามรถนำคำนี้ไปค้นหาในฐานข้อมูลต่อไป
echo "<b>คำค้น:</b> " .$find;
echo "<br><br><input type=button onClick=\"location.href='index.php'\" value='กลับเมนูหลัก'>";
?>
แสดงผล
รหัสที่พิมพ์เข้ามาไม่ถูกต้อง
รหัสถูกต้อง แสดงฟอร์มการค้นหา
เมื่อพิมพ์คำค้นหา ให้นำมาแสดงในหน้าเดียวกัน
ความคิดเห็น
แสดงความคิดเห็น