php mysql อยากทราบวิธีสร้างโค้ด เลือกข้อมูลมาโชวจาก DB ตามรูป คะ........
คือ อยากทราบโค้ด ค่ะ
Date :
2013-01-21 17:20:20
By :
noony
อันนี้ 3 AND ต้องมีทั้ง 3 ค่าถึงจะมีข้อมูลออกมา
Code (PHP)
$sql = "SELECT * FROM your_table WHERE date_ฟิลด์ LIKE '%$ตัวแปรDate%' AND ID_ฟิลด์ LIKE '%$ตัวแปรID1%' AND ID_ฟิลด์ LIKE '%$ตัวแปรID2%' ";
ตรง LIKE ไปเปลี่ยนรูปแบบเอาได้หลากหลาย ไม่แน่ใจว่า ID1 กับ ID2 จะใช้ between อ่ะเปล่า
ต้องการแบบนี้อ่ะเปล่า เดาไม่ถูก
Date :
2013-01-21 18:53:49
By :
apisitp
คือหนูต้องการค่าถ้ากรอก fild ใด fild หนึง พอกดค้นหา ก้อขึ้นมา ค่ะ
Date :
2013-01-21 19:47:27
By :
noony
Code (PHP)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Managment Web</title>
<link href="addmin.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="wrapper">
<div class="header">
<? include"header_admin.php"; ?>
</div>
<? include"topmenu.php"; ?>
<div class="left">
<? include"report_menu.php"; ?>
</div>
<div class="content">
<center>
กรุณากรอกหมายเลข รหัสสินค้า<br /><br />
<form id="form2" name="form2" method="post" action="report_customer_order.php">
<input class="textfield" type="text" name="pcode" id="textfield" />
กรุณากรอกหมายเลข ชื่อลูกค้า<br />
<form id="form1" name="form1" method="post" action="report_customer_order.php">
<input class="textfield" type="text" name="customer_name" id="textfield" />
<input class="button_gray" type="submit" name="button" id="button" value="ค้นหา" />
</form> <br />
<?
$order=$_POST[order];
include "connect.php";
if($customer_name==""){
echo"<center><h5>คุณยังไม่ได้ระบุ ชื่อลูกค้า รูปแบบไม่ถูกต้อง</h5></center><br />"; exit();
}else{
echo"$customer_name";
$sql="select * from sand_order where name_order='$customer_name'";
$result=mysql_db_query($dbname,$sql);
$num=mysql_num_rows($result);
if ($num>0) {
echo"<table class=\"tablemanager\">";
echo"<tr class=\"yellow\"><td>Sales Order</td><td>ชื่อ-นามสกุลลูกค้า</td><td>ทีอยู่ลูกค้า</td><td>เบอร์โทรลูกค้า</td><td>วันที่สั่งสินค้า</td><td>ดูรายละเอียด</td></tr>";
while($rs=mysql_fetch_array($result)){
if($bg == "#FFFFFF") { //ส่วนของการ สลับสี
$bg = "#e1fef4";
} else {
$bg = "#FFFFFF";
}
$id_order=$rs[id_order];
$name_order=$rs[name_order];
$sername_order=$rs[sername_order];
$address_order=$rs[address_order];
$tel_order=$rs[tel_order];
$date_order=$rs[date_order];
// echo"$id_order $name_order $sername_order $address_order $date_order";
echo"<tr bgcolor='$bg'><td>$id_order</td><td>$name_order $sername_order</td><td>$address_order</td><td>$tel_order</td><td>$date_order</td><td><center><a href=report_detail_print.php?id_order=$id_order>Check</a></center></td></tr>";
} echo"</table><br>";
}
}?>
<?
$order=$_POST[order];
include "connect.php";
if($pcode==""){
echo"<center><h5>คุณยังไม่ได้ระบุ รหัสสินค้า</h5></center><br />"; exit();
}else{
echo"$pcode";
$sql="select * from product_sand left join sand_order_detail on product_sand.id=sand_order_detail.ref_id_prd left join sand_order on sand_order.id_order=sand_order_detail.ref_id_order where id=$pcode";
$result=mysql_db_query($dbname,$sql);
$num=mysql_num_rows($result);
if ($num>0) {
echo"<table class=\"tablemanager\">";
echo"<tr class=\"yellow\"><td>รหัสสินค้า</td><td>Sales Order</td><td>ProductName</td><td>CustomerName</td><td>Price</td></tr>";
while($rs=mysql_fetch_array($result)){
if($bg == "#FFFFFF") { //ส่วนของการ สลับสี
$bg = "#e1fef4";
} else {
$bg = "#FFFFFF";
}
$id=$rs[id];
$ref_id_order=$rs[ref_id_order];
$name_prd=$rs[name_prd];
$name_order=$rs[name_order];
$date_start=$rs[date_start];
$sername_order=$rs[sername_order];
$price=$rs[price];
echo"<tr bgcolor='$bg'><td>$id</td><td>$ref_id_order</td><td>$name_prd</td><td>$name_order $sername_order</td><td>$price</td></tr>";
} echo"</table><br>";
}
}?>
<br /><br /><br /><br />
<div style="clear:both;"></div>
</div>
</div>
</body>
</html>
<?php /*?><? }else {
header("Location: admin_fault.php");
} ?><?php */?>
Date :
2013-01-22 09:46:44
By :
noony
มันค้นหาได้แค่ ช่อง 2 ช่อง 1 มันไม่ขึ้น ค่ะ
Date :
2013-01-22 09:47:11
By :
noony
ไม่เลย ค่ะ แค่มันไม่ขึ้น ค่ะ
Date :
2013-01-23 08:14:00
By :
noony
Code (PHP)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Managment Web</title>
<link href="addmin.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="wrapper">
<div class="header">
<? include"header_admin.php"; ?>
</div>
<? include"topmenu.php"; ?>
<div class="left">
<? include"report_menu.php"; ?>
</div>
<div class="content">
<center>
<p> </p>
<form action="report_no_order.php" method="post" name="testform" >
<p>
จาก
<input name="dc" size="11">
<a href="javascript:void(0)" onclick="if(self.gfPop)gfPop.fPopCalendar(document.testform.dc);return false;" ><img class="PopcalTrigger" align="absmiddle" src="PopCalendarXP/calbtn.gif" width="34" height="22" border="0" alt=""></a> <span class="style15"> ถึง
<input name="dc2" id="dc2" size="11">
<a href="javascript:void(0)" onclick="if(self.gfPop)gfPop.fPopCalendar(document.testform.dc2);return false;" ><img class="PopcalTrigger" align="absmiddle" src="PopCalendarXP/calbtn.gif" width="34" height="22" border="0" alt=""></a> </span><!--<input type="submit" name="Submit" value="Submit">-->
</p>
</form>
<p> </p>
<!-- PopCalendar(tag name and id must match) Tags should not be enclosed in tags other than the html body tag. -->
<iframe width=174 height=189 name="gToday:normal:agenda.js" id="gToday:normal:agenda.js" src="PopCalendarXP/ipopeng.htm" scrolling="no" frameborder="0" style="visibility:visible; z-index:999; position:absolute; top:-500px; left:-500px;">
</iframe>
กรุณากรอก หมายเลข MID <br />
<form id="form1" name="form1" method="post" action="report_no_order.php">
<input class="textfield" type="text" name="tid" id="textfield" />
กรุณากรอก หมายเลข TID <br />
<form id="form2" name="form2" method="post" action="report_no_order.php">
<input class="textfield" type="text" name="mid" id="textfield" />
<input class="button_gray" type="submit" name="button" id="button" value="ค้นหา" />
</form> <br />
<br /><br />
<?
$tid=$_POST[order];
include "connect.php";
if($tid==""){
echo"<center><h5>กรอกหมาข Order ที่ต้องหารค้นหาครับ</h5></center>";
echo" <br /><br /><br /><br />";
exit();
}else{
$sql="select * from sand_order left join sand_order_detail on sand_order.id_order=sand_order_detail.ref_id_order left join product_sand on sand_order_detail.ref_id_prd=product_sand.id where id_order=$tid";
$result=mysql_db_query($dbname,$sql);
if($result){
echo"<table class=\"tablemanager\">";
echo"<tr class=\"yellow\"><td>sale order</td><td>Product code</td><td>price/บาท</td><td>ProducName</td><td>CustomerName</td></tr>";
while( $rs=mysql_fetch_array($result)){
$ref_id_order=$rs[ref_id_order];
$ref_id_prd=$rs[ref_id_prd];
$number=$rs[number];
$name_prd=$rs[name_prd];
$name=$rs[name_order];
$price=$rs[total_order];
echo"<tr>
<td><a href =\"report_detail_print.php?id_order=$ref_id_order\">$ref_id_order</a></td>
<td>$ref_id_prd</td>
<td>$price </td>
<td>$name_prd</td>
<td>$name</td>";
} echo "</table>";
}else{
echo"NO DATA";
}
}?>
<!-- 1 -->
<?
$mid=$_POST[order];
include "connect.php";
if($mid==""){
echo"<center><h5>กรอกหมาข mid ที่ต้องหารค้นหาครับ</h5></center>";
echo" <br /><br /><br /><br />";
exit();
}else{
$sql="select * from sand_order left join sand_order_detail on sand_order.id_order=sand_order_detail.ref_id_order left join product_sand on sand_order_detail.ref_id_prd=product_sand.id where id_order=$mid";
$result=mysql_db_query($dbname,$sql);
if($result){
echo"<table class=\"tablemanager\">";
echo"<tr class=\"yellow\"><td>sale order</td><td>Product code</td><td>price/บาท</td><td>ProducName</td><td>CustomerName</td></tr>";
while( $rs=mysql_fetch_array($result)){
$ref_id_order=$rs[ref_id_order];
$ref_id_prd=$rs[ref_id_prd];
$number=$rs[number];
$name_prd=$rs[name_prd];
$name=$rs[name_order];
$price=$rs[total_order];
echo"<tr>
<td><a href =\"report_detail_print.php?id_order=$ref_id_order\">$ref_id_order</a></td>
<td>$ref_id_prd</td>
<td>$price </td>
<td>$name_prd</td>
<td>$name</td>";
} echo "</table>";
}else{
echo"NO DATA";
}
}?>
<!-- 2 --
<?
$testform=$_POST[order];
include "connect.php";
if($testform==""){
echo"<center><h5>กรอกหมาข testform ที่ต้องหารค้นหาครับ</h5></center>";
echo" <br /><br /><br /><br />";
exit();
}else{
$sql="select * from sand_order left join sand_order_detail on sand_order.id_order=sand_order_detail.ref_id_order left join product_sand on sand_order_detail.ref_id_prd=product_sand.id where id_order=$testform";
$result=mysql_db_query($dbname,$sql);
if($result){
echo"<table class=\"tablemanager\">";
echo"<tr class=\"yellow\"><td>sale order</td><td>Product code</td><td>price/บาท</td><td>ProducName</td><td>CustomerName</td></tr>";
while( $rs=mysql_fetch_array($result)){
$ref_id_order=$rs[ref_id_order];
$ref_id_prd=$rs[ref_id_prd];
$number=$rs[number];
$name_prd=$rs[name_prd];
$name=$rs[name_order];
$price=$rs[total_order];
echo"<tr>
<td><a href =\"report_detail_print.php?id_order=$ref_id_order\">$ref_id_order</a></td>
<td>$ref_id_prd</td>
<td>$price </td>
<td>$name_prd</td>
<td>$name</td>";
} echo "</table>";
}else{
echo"NO DATA";
}
}?>
<!-- 3 -->
<br /><br /><br /><br />
<div style="clear:both;"></div>
</div>
<center> <? include "footer.php " ;?> <center>
</div>
</body>
</html>
<?php /*?><? }else {
header("Location: admin_fault.php");
} ?><?php */?>
โค้ดล่าสุดค่ะ ที่ทำแล้วไม่ข้นไรเลย
Date :
2013-01-23 08:15:49
By :
noony
Code (PHP)
<form action="report_no_order.php" method="post" name="testform" >
<form id="form1" name="form1" method="post" action="report_no_order.php">
<form id="form2" name="form2" method="post" action="report_no_order.php">
ทำไมฟอร์มเยอะจัง.....
จากโพสต์แรกเลยที่ถามมาก็สร้างมีแค่ฟอร์มเดียวก็พอครับ
- ถ้าเป็นการเขียนที่เคยทำได้ก็ต้องขออภัย ข้ามไปขั้นอื่นเลยครับ
- ลองตรวจสอบการส่งค่าพื้นฐาน หลังจากกดปุ่ม(Submit) Search ดีกว่าครับ เช่น เมื่อกรอกข้อมูลที่ช่อง name=mid และ/หรือ name=tid ก็ลอง echo ค่ามันออกมาดูครับว่ามีจริงหรือเปล่า ต.ย. echo $_POST['$mid'];
- สรุปก็คือลองตรวจสอบค่าต่าง ๆ โดยการ echo มันออกมาดูครับ
เมื่อมั่นใจว่าค่าครบ ค่อยไปไล่เรื่องการ คิวรี่ database เมื่อถึงตอนนั้นก็ต้อง Captureหรือ/และอธิบายมาว่า DB มีกี่ตาราง จะ join อะไรอย่างไรบ้าง.....ถึงตอนนั้นเพื่อน ๆ ในเว็บจะช่วยเรื่องคิวรี่อีกครั้ง
ลองไล่ปัญหาที่ละตอนครับ ใจเย็น ๆ
บรรทัดที่ 36 - 46 คืออะไรครับ
ตรง
Code (PHP)
<input name="dc" size="11">
<a href="javascript:void(0)" onclick="if(self.gfPop)gfPop.fPopCalendar(document.testform.dc);return false;" ><img class="PopcalTrigger" align="absmiddle" src="PopCalendarXP/calbtn.gif" width="34" height="22" border="0" alt=""></a> <span class="style15"> ถึง
<input name="dc2" id="dc2" size="11">
<a href="javascript:void(0)" onclick="if(self.gfPop)gfPop.fPopCalendar(document.testform.dc2);return false;" ><img class="PopcalTrigger" align="absmiddle" src="PopCalendarXP/calbtn.gif" width="34" height="22" border="0" alt=""></a> </span><!--<input type="submit" name="Submit" value="Submit">-->
</p>
</form>
<p> </p>
<!-- PopCalendar(tag name and id must match) Tags should not be enclosed in tags other than the html body tag. -->
<iframe width=174 height=189 name="gToday:normal:agenda.js" id="gToday:normal:agenda.js" src="PopCalendarXP/ipopeng.htm" scrolling="no" frameborder="0" style="visibility:visible; z-index:999; position:absolute; top:-500px; left:-500px;">
</iframe>
ไล่ Code แล้วครับ ลองหาบรรทัด
$tid=$_POST[order];
มันไม่เป็นจริงครับ $_POST[order]; ไม่มีที่มาครับ ลองพิจารณาดู
ค่ามาจาก
<input class="textfield" type="text" name="tid" id="tid" />
ก็ต้องรับเป็น
$tid=$_POST['tid'];
เหมือนกันครับตรง $mid=$_POST[order]; นี่ด้วย
ประวัติการแก้ไข 2013-01-23 08:59:35 2013-01-23 09:04:58
Date :
2013-01-23 08:53:13
By :
apisitp
คงจะได้นะครับ
พดีทำไปโพสต์ไป Edit หลายรอบ
ลืมบอก
ผมเอา form ออกให้เหลืออันเดียวครับ
form1 กับ form2 เอาออกครับ
ตรงที่ปิด Comment ไว้อีกอันคือ $testform=$_POST[order]; ต้องเปลี่ยนด้วยนะครับ
ไล้ Code ดีดี
ถ้าไม่เข้าใจลองหาเรื่อง GET กับ POST อ่านดูครับ
ประวัติการแก้ไข 2013-01-23 09:08:04 2013-01-23 09:09:35
Date :
2013-01-23 09:06:22
By :
apisitp
นี่คือโค้ดที่ค้นหาได้ 1 อย่าง ถ้า อยากใส่ 2 ช่องค้นหา ต้องเพิ่มโค้ดตรงส่วนไหน ค่ะ
Code (PHP)
<center>
กรุณากรอกหมายเลข MID<br />
<form id="form1" name="form1" method="post" action="report_customer_order.php">
<input class="textfield" type="text" name="merchant" id="textfield" />
<input class="button_gray" type="submit" name="button" id="button" value="Query" />
</form>
<center>
กรุณากรอกหมายเลข TID<br />
<form id="form1" name="form1" method="post" action="report_customer_order.php">
<input class="textfield" type="text" name="TERMINAL" id="textfield" />
<input class="button_gray" type="submit" name="button" id="button" value="Query" />
</form>
ตั้งแต่บรรทัดนี้ ลงไป ต้องเพิ่มตรงส่วนไหน ใส่ ยังไง ค่ะ รบกวนหน่อย ค่ะ
<br />
<?
$order=$_POST[order];
include "connect.php";
if($merchant==""){
echo"<center><h2> Insert MID Number please !!</h2><br><br><br><center>"; exit();
}else{
//echo"$date_buy<br />";
$sql="select * from logs where merchant='$merchant'";
$result=mysql_db_query($dbname,$sql);
$num=mysql_num_rows($result);
if ($num<=0) {
echo"<center>MID $merchant ไม่มีรายการจำหน่าย</center>";
}else{
echo"<table class=\"tablemanager\">";
echo"<tr class=\"yellow\" ><td>LOG_DATE</td><td>MERCHANT</td><td>TERMINAL</td><td>APPVER </td><td>CRC </td><td> IP</td></tr>";
while($rs=mysql_fetch_array($result)){
$LOG_DATE=$rs[LOG_DATE];
$MERCHANT=$rs[MERCHANT];
$TERMINAL=$rs[TERMINAL];
$APPVER=$rs[APPVER];
$CRC=$rs[CRC];
$IP=$rs[IP];
echo"<tr><td align=center> $LOG_DATE</td><td> $MERCHANT</td><td> $TERMINAL</td><td>$APPVER </td><td>$CRC </td><td> $IP</td></tr>";
}
echo"</table>";
}
}
?>
Date :
2013-01-23 13:18:37
By :
noony
ก็เพราะค่ามันอยู่คนละ form กันไงครับ
กลับไปอ่าน Comment ที่ 14 ให้ละเอียดก่อนนะครับ
ประวัติการแก้ไข 2013-01-23 14:33:07
Date :
2013-01-23 14:31:36
By :
apisitp
เข้าใจค่ะ แต่ไม่เข้าใจ การทำให้ ฟอม 2 ฟอม รวมกันแล้ว action ไปค้นหา เท่านั้น ค่ะ ว่า ต้อง ใส่แบบไหน ยังไง ค่ะ
Date :
2013-01-23 17:10:50
By :
noony
ค่ามันส่งผ่าน Action POST มันรวมกันไม่ได้หรอกครับ
ฟอร์มใครฟอร์มมันไม่งั้นผมจะยืนยันให้คุณเอาฟอร์มออกหรือครับ....
แล้วทำไมต้องแยกฟอร์มให้ยุ่งยาก ให้สับสนครับ
ปล. แต่ถ้าใครเคยทำได้ก็มาแนะนำด้วยครับ อยากรู้เหมือนกันครับ
ประวัติการแก้ไข 2013-01-23 18:03:47
Date :
2013-01-23 18:00:10
By :
apisitp
คือเขาอยากให้ ค้นหา ตัวเลข 2 ชนิด โดยที่ ซึ่ง ตัวเลขนี้สัมพันกัน โดยถ้า ค้นหาตัวใดตัวหนึง มันจะขึ้นมาทั้ง 2 ค่ะ
Date :
2013-01-24 17:32:36
By :
noony
ผมว่าเวลา search ให้เค้าใส่ช่องเดียวดีป่าวหละครับ แล้วเวลาค้นหา ก็ใช้คำสั่ง
Code (PHP)
WHERE $field LIKE '%ตัวค้นหา%';
คือกรอกอะไรมาก็ได้ แล้วมา WHERE เอาเอง
ถึงไงเค้าควรจะใ่ส่ช่องเดียวอยู่แล้วเราแค่เอาค่าที่เค้าใส่มาหาก็พอแล้วมั้ง
ประวัติการแก้ไข 2013-01-24 17:46:20
Date :
2013-01-24 17:45:03
By :
teez1232002
จากความเห็นที่ 15 ของคุณ noon นะ....ผมตัด form เพิ่ม คิวรี่นิดนึง ลองครับ
Code (PHP)
<form id="form1" name="form1" method="post" action="report_customer_order.php">
<center>
กรุณากรอกหมายเลข MID<br />
<input class="textfield" type="text" name="merchant" id="textfield" />
</center>
<center>
กรุณากรอกหมายเลข TID<br />
<input class="textfield" type="text" name="terminal" id="textfield" />
</center>
<center>
<input class="button_gray" type="submit" name="button" id="button" value="Query" />
</center>
</form>
<br />
<?
include "connect.php";
if($merchant==""){
echo"<center><h2> Insert MID Number please !!</h2><br><br><br><center>"; exit();
}else{
echo "merchant = ".$_POST['merchant']."<br>";
echo "terminal = ".$_POST['terminal']."<br>";
$sql="select * from logs where merchant='$merchant' OR terminal='$terminal'"; //ใช้ OR จะค้นหมดครับ
$result=mysql_db_query($dbname,$sql);
$num=mysql_num_rows($result);
if ($num<=0) {
echo"<center>MID $merchant ไม่มีรายการจำหน่าย </center>";
}else{
echo"<table class=\"tablemanager\">";
echo"<tr class=\"yellow\" ><td>LOG_DATE</td><td>MERCHANT</td><td>TERMINAL</td><td>APPVER </td><td>CRC </td><td> IP</td></tr>";
while($rs=mysql_fetch_array($result)){
$LOG_DATE=$rs[LOG_DATE];
$MERCHANT=$rs[MERCHANT];
$TERMINAL=$rs[TERMINAL];
$APPVER=$rs[APPVER];
$CRC=$rs[CRC];
$IP=$rs[IP];
echo"<tr><td align=center> $LOG_DATE</td><td> $MERCHANT</td><td> $TERMINAL</td><td>$APPVER </td><td>$CRC </td><td> $IP</td></tr>";
}
echo"</table>";
}
}
?>
Date :
2013-01-24 20:40:50
By :
apisitp
มัน serch ได้แค่ MID สิค่ะ แต่ TID มันไม่เจอ T_T ส่งพรุงนี้แล้น
Date :
2013-01-24 21:49:11
By :
noony
แล้วค่า POST มันส่งไปครบไหมครับ แล้วที่ไม่เจอมันไม่มีค่าหรือเปล่าครับ
ข้อมูลมันอยู่ในตารางเดียวกันหรือเปล่าครับ เพราะการคิวรี่มันเบสิคที่สุดแล้วครับ
ไล่ Syntax ตัวอักษรเล็กใหญ่มีผลหมด ผมก็ช่วยได้แค่นี้จริง ๆ ครับ
ไล่ที่ละ Step ไม่ยากหรอกครับ
ดูที่ผมใช้อยู่
$sqlbookinshow = "SELECT * FROM $typebook WHERE subjectin LIKE '%$keywords1%' or idbookin LIKE '%$keywords1%' or ownerin LIKE '%$keywords1%' or perfromin LIKE '%$keywords1%' or pertoin LIKE '%$keywords1%' or remarkin LIKE '%$keywords1%' ORDER BY $typebook.`idin` DESC";
ผมเอาค่าเดียวไปหาหมดทุกฟิลด์ มันก็ออกปกติครับ
ใจเย็น ๆ
ประวัติการแก้ไข 2013-01-24 22:00:46
Date :
2013-01-24 21:57:57
By :
apisitp
ขอบคุณ ค่ะ จะลองดู ค่ะ
Date :
2013-01-24 22:03:22
By :
noony
บรรทัดที่ 5 กับ 12
<input class="textfield" type="text" name="merchant" id="textfield" />
<input class="textfield" type="text" name="terminal" id="textfield" />
อีกอัน id ซ้ำกันลองเปลี่ยนด้วยครับ
Date :
2013-01-24 22:14:33
By :
apisitp
ได้แล้ว ค่ะ ตอนนี้ เหลือ BETWEEN อย่างเดียว ค่ะ ที่ไม่ขึ้น
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title> </title>
<link href="../addmin.css" rel="stylesheet" type="text/css" />
</head>
<body>
<? include "../include/topmenu-admin.php"; ?>
<h4> Search LOG <h4>
<center>
<TABLE class="tablemanager">
<form action="query_all.php" method="post" name="testform" >
<p>
จาก
<input name="dc" size="11">
<a href="javascript:void(0)" onclick="if(self.gfPop)gfPop.fPopCalendar(document.testform.dc);return false;" ><img class="PopcalTrigger" align="absmiddle" src="PopCalendarXP/calbtn.gif" width="34" height="22" border="0" alt=""></a> <span class="style15"> ถึง
<input name="dc2" id="dc2" size="11">
<a href="javascript:void(0)" onclick="if(self.gfPop)gfPop.fPopCalendar(document.testform.dc2);return false;" ><img class="PopcalTrigger" align="absmiddle" src="PopCalendarXP/calbtn.gif" width="34" height="22" border="0" alt=""></a> </span><!--<input type="submit" name="Submit" value="Submit">-->
</p>
<p> </p>
<!-- PopCalendar(tag name and id must match) Tags should not be enclosed in tags other than the html body tag. -->
<iframe width=174 height=189 name="gToday:normal:agenda.js" id="gToday:normal:agenda.js" src="PopCalendarXP/ipopeng.htm" scrolling="no" frameborder="0" style="visibility:visible; z-index:999; position:absolute; top:-500px; left:-500px;">
</iframe>
กรุณากรอกหมายเลข MID<br />
<input class="textfield" type="text" name="MERCHANT" id="textfield" />
กรุณากรอกหมายเลข TID<br />
<input class="textfield" type="text" name="TERMINAL" id="textfield" />
<input class="button_gray" type="submit" name="button" id="button" value="Query" />
</form>
<br /><br />
<?
include "../connect.php";
if($TERMINAL=="" && $MERCHANT=="" && $dc=="" && $dc2==""){
echo"<center><h2> กรุณากรอกข้อมูลอย่างไดอย่างหนึ่งครับ !!</h2><br><br><br><center>"; exit();
}else if($TERMINAL!="" && $MERCHANT=="" && $dc=="" && $dc2==""){
$sql="select * from logs where TERMINAL='$TERMINAL'";
}else if($TERMINAL=="" && $MERCHANT!="" && $dc=="" && $dc2==""){
$sql="select * from logs where MERCHANT='$MERCHANT'";
}else if($TERMINAL!="" && $MERCHANT!="" && $dc=="" && $dc2=="") {
$sql="select * from logs where TERMINAL='$TERMINAL' && MERCHANT='$MERCHANT'";
}else if($TERMINAL!="" && $MERCHANT!="" && $dc!="" && $dc2=="") {
echo"<center><h2> กรุณากรอก วันสิ้นสุด</h2><br><br><br><center>"; exit();
}else if($TERMINAL!="" && $MERCHANT!="" && $dc=="" && $dc2!="") {
echo"<center><h2> กรุณากรอก วันเริ่มต้น</h2><br><br><br><center>"; exit();
}else if($TERMINAL!="" && $MERCHANT!="" && $dc!="" && $dc2!="") {
$sql="select * from logs where TERMINAL='$TERMINAL' && MERCHANT='$MERCHANT' && DATETIME BEETWEEN '$dc'AND '$dc2'" ;
}
$result=mysql_db_query($dbname,$sql);
$num=mysql_num_rows($result);
if ($num<=0) {
echo"<center>TID $TERMINAL NO DATA</center>";
}else{
echo"<table class=\"tablemanager\">";
echo"<tr class=\"yellow\" ><td>LOG_DATE</td><td>MERCHANT</td><td>TERMINAL</td><td>APPVER </td><td>CRC </td><td> IP</td></tr>";
while($rs=mysql_fetch_array($result)){
$LOG_DATE=$rs[LOG_DATE];
$MERCHANT=$rs[MERCHANT];
$TERMINAL=$rs[TERMINAL];
$APPVER=$rs[APPVER];
$CRC=$rs[CRC];
$IP=$rs[IP];
echo"<tr><td align=center> $LOG_DATE</td><td> $MERCHANT</td><td> $TERMINAL</td><td>$APPVER </td><td>$CRC </td><td> $IP</td></tr>";
}
echo"</table>";
}
?>
<!-- 1 -->
</TABLE>
<br /><h2>
</body>
</html>
Date :
2013-01-25 09:41:51
By :
noony
ถ้าใช้แบบนี้
$sql="select * from logs where TERMINAL='$TERMINAL' && MERCHANT='$MERCHANT' && DATETIME BEETWEEN '$dc'AND '$dc2'" ;
หมายความว่า จะต้องมีข้อมูลครบทั้ง 3 ฟิลด์ ข้อมูลถึงจะออกมาแสดง ถูกต้องไหมครับ (สิ่งที่ต้องการเป็นแบบนี้ใช่ไหม)...
- ถ้าต้องการแค่ เจอข้อมูลก็เปลี่ยนตรง && เป็นใช้ OR ก็ได้นะ......
- ถ้ายังไม่ได้ต้องลองทดสอบการค้นหา เงื่อนไขแค่ใช้วันอย่างเดียว....แยกมาต่างหาก
- ฟิลด์ DATETIME ในตาราง logs เก็บรูปแบบวันที่แบบไหนครับ มีส่วนด้วย ถ้า เก็บเป็น yyyy-mm-dd รูปแบบที่ส่งมาจาก dc และ dc2 ก็ต้องเป็นรูปแบบเดียวกัน
- ชื่อฟิลด์ DATETIME มันเหมือนชื่อของชนิดข้อมูล DATETIME เหมือนกัน ไม่รู้มีผลเรื่องคำสงวนหรือเปล่า
ประวัติการแก้ไข 2013-01-25 21:51:22
Date :
2013-01-25 21:50:19
By :
apisitp
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\AppServ\www\thaismart\view_log\query_all.php on line 76
TID NO DATA
error แบบนี้คือไรคะ
Date :
2013-01-26 12:58:31
By :
noony
T_T
Date :
2013-01-28 11:46:55
By :
noony
ผิดพลาด Warning: mysql_num_rows(): เนื่องจากไม่มี num row หรือ หาค่า select ไม่เจอนั่นเอง
Date :
2013-01-28 11:53:00
By :
Ex-[S]i[L]e[N]t
ตรวจหมดแล้ว ค่ะ มัน Selct ตรงทุกอัน มึนๆๆ
Date :
2013-01-28 15:18:57
By :
noony
ตรวจสอบดีดีครับ เรารับ POST GET ครบหรือยัง เท่าที่ดูไม่มีการรับตัวแปรเลยนะครับ
Date :
2013-01-28 16:03:10
By :
Ex-[S]i[L]e[N]t
ใช่ ค่ะ แต่ ทำไม ตรง Search กรุณากรอก MID TID มัน Search ได้ แต่ พอ ตรงปติทิน มัน ERROR ค่ะ
Date :
2013-01-28 20:29:30
By :
noony
print $sql แล้วเอาไปลงใน phpmyadmin ดูครับ
Date :
2013-01-30 10:15:24
By :
แค่ผ่านมา
Load balance : Server 01