ติดปัญหาโค้ด

ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา ติดปัญหาโค้ด

ติดปัญหาโค้ด
<!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=windows-874" />
<title>Untitled Document</title>

</head>
<?
include ("connect_db.php");
?>
<body>
<form action="" name="" method="post">
<table>
		<tr> 
				<td>ค้นหาจาก :</td>
				<td>วันที่ : 
				  <input name="date1" type="text"  size="10"/>
				  <a href="javascript:displayDatePicker('date')"><img border="0" src="Calendar-icon.jpg" width="20" height="20"></a>
				  </td>
				<td> เลขที่ Memo : </td>
      			<td><input name="no_memo" type="text" size = "10" id="no_memo"/></td>  
		<tr>
				<td>สาขา : </td>
				<td width="0"><select name="branch"  id="branch">
          				<option value="U2" > U2 </option>
          				<option value="U3" > U3 </option>
          				<option value="U4" > U4 </option>
          				</select>	 
				</td>
				<td> User : </td>
      			<td ><input name="name_user" type="text" size = "10"/>
				</td> 
		</tr>
		<tr>
				<td> Method : </td>
		 		<td width="0"><select name="meth1"  id="meth1">
            		<option value="add" > Add </option>
            		<option value="del" > Delete </option>
            		<option value="tranfer" > Tranfer </option>
          			</select></td> 
				<td> Option : </td>
		 		<td width="0"><select name="opt1"  id="opt1">
            		<option value="stk" > Stock </option>
            		<option value="tranferboi" > Tranfer to Scrap BOI </option>
					<option value="tranfernonboi" > Tranfer to Scrap NON-BOI</option>
          			</select>
				</td> 
		</tr>
				<td  align="center" colspan="4"><input type="submit" name="b_ss"  value="ค้นหา" /></td>
		<table cellpadding="1" cellspacing="1" border="0" align="center" width="100%" bgcolor="#000000">
				<?
				if($date1&&!$date1){
					//$d_date="AND memo_03='$date1'";
					$d_date=strlen($date1) ? " AND memo_03='$date1' " : '';
				}
				if($no_memo&&!$no_memo){
					//$n_memo="AND memo_01='$no_memo' ";
					$n_memo=strlen($no_memo) ? " AND memo_01='$no_memo' " : '';
				}
				if($branch&&!$branch){
					//$b_branch="AND memo_02='$branch'";
					$b_branch=strlen($branch) ? " AND memo_02='$branch' " : '';
				}
				if($name_user&&!$name_user){
					//$n_nameuser="AND memo_04='$name_user'";
					$n_nameuser=strlen($name_user) ? " AND memo_04='$name_user' " : '';
				}
				if($meth1&&!$meth1){
					//$m_meth="AND memo_06='$meth1'";
					$m_meth=strlen($meth1) ? " AND memo_06='$meth1' " : '';
				}
				if($opt1&&!$opt1){
					//$o_opt1="AND memo_07='$opt1'";
					$o_opt1=strlen($opt1) ? " AND memo_07='$opt1' " : '';
				}
				$sql="select * from find_memo01 where $d_date $n_memo $b_branch $n_nameuser  $m_meth  $o_opt1";
					echo "$sql";
				$d=0;
				$result = mysql_db_query($dbname,$sql) or die ("Can't connect to database"); 
				While($row=mysql_fetch_array($result)){
				$f=$d%2;
				?>
				<tr class="b" bgcolor="<? if($f==0){?>#FFFFCC<? }else{?>CCFFFF<? }?>">
					<td>
						<table cellpadding="1" cellspacing="1" border="0" align="center" width="100%">
							<tr align="center">
								<td width="40%"><b>เลขที่ Memo</b></td>
								<td><b>วันที่</b></td>
								<td><b>สาขา</b></td>
								<td><b>Name User :</b></td>
								<td><b>Method</b></td>
								<td><b>Option</b></td>
								<td><b>Name Admin</b></td>
							</tr>
							<?
							$sql="select memo_01,memo_03,memo_02,memo_04,memo_06,memo_07,memo_05, from find_memo01"; //
							$result=mysql_db_query($dbname,$sql) or die ("Can't connect to database ");
							While($row=mysql_fetch_array($result)){
							?>
							<tr align="center">
								<td align="left"><?=$row[2];?></td>
								<td><?=$row[1];?></td>
								<td><?=$row[3];?></td>
								<td><?=$row[4];?></td> //
								<td><?=$row[5];?></td>
								<td>&nbsp;<?=$row[7];?>&nbsp;</td>
							</tr>
							<?
							}
							?>
						</table>					</td>
				</tr>
				<?
				$d++;
				}
				?>
			</table>		</td>	
		</tr>
</table>
</form>
</body>
</html>


Kawakwang 61.90.149.xxx 02-04-2015 10:18:06

คำแนะนำ และการใช้งาน

สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก


  • ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
  • เปลี่ยน


    ( หรือ เข้าใช้งานผ่าน Social Login )

 ความคิดเห็นที่ 1
ติดปัญหาตรงบรรทัดนี้ค่ะ 
 $sql="select * from find_memo01 where $d_date $n_memo $b_branch $n_nameuser  $m_meth  $o_opt1"
run หน้าฟอร์ม มันขึ้นแบบนี้ 
select * from find_memo01 where Can't connect to database

พอเอาไปหา error ใน sql มันขึ้นว่า

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''t connect to database' at line 1 

(
อันนี้เป็นโค้ด ที่นำมาจากพี่ที่เค้าเขียนกันไว้ มาประยุกต์ใช้นะคะ)


kawakwang 61.90.149.xxx 02-04-2015 10:20
 ความคิดเห็นที่ 2
$sql="select * from find_memo01 where $d_date $n_memo $b_branch $n_nameuser  $m_meth  $o_opt1";  
 
เป็นกับการต่อคำสั่ง sql หรือเปล่า ให้เพิ่มเลข 1 เข้าไปก่อน
 
$sql="select * from find_memo01 where 1 $d_date $n_memo $b_branch $n_nameuser  $m_meth  $o_opt1";  
 
เพราะถ้าสคริปรัน เลยจะทำให้ errror กลายเป็น where and .....
ใส่เลข 1 ต่อจาก where เพื่อรองรับการต่อคำสั่ง sql


ninenik 124.122.246.xxx 02-04-2015
 ความคิดเห็นที่ 3
$sql="select * from find_memo01 where 1 $d_date $n_memo $b_branch $n_nameuser  $m_meth  $o_opt1";

ลองใส่แล้วมันก็ยังขึ้นแบบเดิมนะคะ 
select * from find_memo01 where 1 Can't connect to database
พอเอาไปหา error ใน sql มันขึ้นว่า
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Can't connect to database' at line 1 



kawakwang 61.90.149.xxx 02-04-2015 10:52
 ความคิดเห็นที่ 4
ลองใส่ where 1 แล้วยังขึ้นแบบนี้ select * from find_memo01 where 1 Can't connect to database


kawakwang 61.90.149.xxx 02-04-2015 10:53
 ความคิดเห็นที่ 5
ตรวจสอบการเชื่อมต่อฐานข้อมูล ไฟล์ connect_db.php เป็นแบบไหน ดูว่ากำหนดค่าถูกไหม
และก็ส่วนของคำ่สั่ง mysql_db_query  น่าจะยกเลิกใช้งานใน php 5.3 
ลองเปรียเป็นแบบอื่นแทน ดูบทความด้านล่าง ส่วนเกี่ยวกับการติดต่อฐานข้อมูลเป็นแนวทาง

แนวทางเช็คห้องว่าง ด้วย php และ mysql กับช่วงเวลาต่อวัน 


ninenik 124.122.246.xxx 02-04-2015
 ความคิดเห็นที่ 6
ตอนนี้สามารถโชว์ข้อมูลจากฐานข้อมูล ได้แล้วค่ะ แต่มันยังติดโค้ดตรงนี้
ปล.เอาไปค้นหา error ใน sql ก็ไม่ error อะไรค่ะ

$sql="select * from find_memo01 where memo_01 <> '' $n_memo  $b_branch $d_date $n_nameuser  $n_admin  $m_meth  $o_opt1 $p_pdf";


อันนี้โค้ดทั้งหมดค่ะ

<!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=windows-874" />
<title>Untitled Document</title>

</head>
<?
include ("connect_db.php");
?>
<body>
<form action="" name="" method="post">
<table>
		<tr> 
				<td>ค้นหาจาก :</td>
				<td>วันที่ : 
				  <input name="date1" type="text"  size="10"/>
				  <a href="javascript:displayDatePicker('date')"><img border="0" src="../../AppServ-Backup-2008-05-11/AppServ/www/Calendar-icon.jpg" width="20" height="20"></a>
				  </td>
				<td> เลขที่ Memo : </td>
      			<td><input name="no_memo" type="text" size = "10" id="no_memo"/></td>  
		<tr>
				<td>สาขา : </td>
				<td width="0"><select name="branch"  id="branch">
          				<option value="U2" > U2 </option>
          				<option value="U3" > U3 </option>
          				<option value="U4" > U4 </option>
          				</select>	 
				</td>
				<td> User : </td>
      			<td ><input name="name_user" type="text" size = "10"/>
				</td> 
		</tr>
		<tr>
				<td> Method : </td>
		 		<td width="0"><select name="meth1"  id="meth1">
            		<option value="add" > Add </option>
            		<option value="del" > Delete </option>
            		<option value="tranfer" > Tranfer </option>
          			</select></td> 
				<td> Option : </td>
		 		<td width="0"><select name="opt1"  id="opt1">
            		<option value="stk" > Stock </option>
            		<option value="tranferboi" > Tranfer to Scrap BOI </option>
					<option value="tranfernonboi" > Tranfer to Scrap NON-BOI</option>
          			</select>
				</td> 
		</tr>
				<td  align="center" colspan="4"><input type="submit" name="b_ss"  value="ค้นหา" /></td>
		<table cellpadding="1" cellspacing="1" border="0" align="center" width="100%" bgcolor="#CCCCCC">
				<tr> 
					<td>
						<table cellpadding="1" cellspacing="1" border="0"align="center" width="100%">
							<tr align="center">
								<td><b>เลขที่ Memo</b></td>
								<td><b>สาขา</b></td>
								<td><b>วันที่</b></td>
								<td><b>Name User :</b></td>
								<td><b>Name Admin</b></td>
								<td><b>Method</b></td>
								<td><b>Option</b></td>
								<td><b>PDF</b></td>
							</tr>
				<?
				if($no_memo&&!$no_memo){
					//$n_memo="AND memo_01='$no_memo' ";
					$n_memo=strlen($no_memo) ? " AND memo_01='$no_memo' " : '';
				}
				if($branch&&!$branch){
					//$b_branch="AND memo_02='$branch'";
					$b_branch=strlen($branch) ? " AND memo_02='$branch' " : '';
				}
				if($date1&&!$date1){
					//$d_date="AND memo_03='$date1'";
					$d_date=strlen($date1) ? " AND memo_03='$date1' " : '';
				}
				if($name_user&&!$name_user){
					//$n_nameuser="AND memo_04='$name_user'";
					$n_nameuser=strlen($name_user) ? " AND memo_04='$name_user' " : '';
				}
				if($name_admin&&!$name_admin){
					//$n_admin="AND memo_05='$name_admin'";
					$m_meth=strlen($meth1) ? " AND memo_06='$meth1' " : '';
				}
				if($meth1&&!$meth1){
					//$m_meth="AND memo_06='$meth1'";
					$m_meth=strlen($meth1) ? " AND memo_06='$meth1' " : '';
				}
				if($opt1&&!$opt1){
					//$o_opt1="AND memo_07='$opt1'";
					$o_opt1=strlen($opt1) ? " AND memo_07='$opt1' " : '';
				}
				if($pdf&&!$pdf){
			     	//$p_pdf="AND memo_08='$p_pdf'";
					$o_opt1=strlen($opt1) ? " AND memo_07='$opt1' " : '';
				}
					//$host = "localhost";
					//$user = "root";
					//$pass = "1234";
					//$dbname = "find_memo";
					//$tblname = "find_memo01";
	
					//$dbcon = mysql_connect($host,$user,$pass) or die ("Connec't Database");
					//mysql_select_db ($dbname,$dbcon);
					
					$sql="select * from find_memo01 where memo_02 <> '' $n_memo  $b_branch $d_date $n_nameuser  $n_admin  $m_meth  $o_opt1 $p_pdf";
							echo "$sql";
				//echo "==".$dbname;
				
				$result = mysql_db_query($dbname,$sql) or die ("Can't connect to database $dbname"); 
				$d=0;
				While($row=mysql_fetch_array($result)){
				if ($d%2==0)
				{	
					$bg = "#CCFFFF";
				}
				else
				{
					$bg = "#FFFFCC";
				}
				?>
							<tr align="center" bgcolor="<?=$bg;?>">
								<td><?=$row[0];?></td>
								<td><?=$row[1];?></td>
								<td><?=$row[2];?></td>
								<td><?=$row[3];?></td>
								<td><?=$row[4];?></td> 
								<td><?=$row[5];?></td>
								<td><?=$row[6];?></td>
								<td><a href="filepdf/<?=$row[7];?>"><?=$row[7];?></a></td>
								
							</tr>
				<?
				$d++;
				}
				?>
			</table>	
		</tr>
</table>
</form>
</body>
</html>


kawakwang 61.90.149.xxx 07-04-2015 10:20
 ความคิดเห็นที่ 7
 คืออะไร


ninenik 124.122.175.xxx 07-04-2015
 ความคิดเห็นที่ 8
คือมันไม่สามารถ กดค้นหาข้อมูลได้ค่ะ แต่ว่าโชว์ข้อมูลจากฐานข้อมูลมาทั้งหมดเลย
เลยลอง echo $sql มาดู มันขึ้นแบบนี้ค่ะ select * from find_memo01 where memo_01 <> ''



kawakwang 61.90.149.xxx 08-04-2015 13:35
 ความคิดเห็นที่ 9
เขียนคำสั่งผิดฟิลด์ ค้นหายังไงก็ไม่เจอ ลองเช็คการกำหนดฟิลที่ค้นหาดูดีๆ เท่าที่ดู จากโค้ดแก้ ผิดจาก memo_05 ก็กลายเป็น memo_06
ถ้าคำสัง sql ผิดหายังไงก็ไม่เจอข้อมูล อันนี้ต้องพยายามเช็คทวนตามแต่ละบรรทัด
ส่วนการกำหนดเงื่อนไขการค้นหา พยายามเขียนให้ง่าย ไม่ต้องใช้ตัวแปรเยอะ จะงง บางทีอาจจะเรียกใช้ชื่อตัวแปรผิด

ดูรูปแบบการค้นหาเป็นแนวทาง

แนวทาง การค้นหาจาก หลายรูปแบบ และแบ่งหน้า อย่างง่าย 
https://www.ninenik.com/content.php?arti_id=573 via @ninenik

หรือโค้ด

<!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=windows-874" />
<title>Untitled Document</title>

</head>
<?
include ("connect_db.php");
?>
<body>
<form action="" name="" method="post">
<table>
		<tr> 
				<td>ค้นหาจาก :</td>
				<td>วันที่ : 
				  <input name="date1" type="text"  size="10"/>
				  <a href="javascript:displayDatePicker('date')"><img border="0" src="../../AppServ-Backup-2008-05-11/AppServ/www/Calendar-icon.jpg" width="20" height="20"></a>
				  </td>
				<td> เลขที่ Memo : </td>
      			<td><input name="no_memo" type="text" size = "10" id="no_memo"/></td>  
		<tr>
				<td>สาขา : </td>
				<td width="0"><select name="branch"  id="branch">
          				<option value="U2" > U2 </option>
          				<option value="U3" > U3 </option>
          				<option value="U4" > U4 </option>
          				</select>	 
				</td>
				<td> User : </td>
      			<td ><input name="name_user" type="text" size = "10"/>
				</td> 
		</tr>
		<tr>
				<td> Method : </td>
		 		<td width="0"><select name="meth1"  id="meth1">
            		<option value="add" > Add </option>
            		<option value="del" > Delete </option>
            		<option value="tranfer" > Tranfer </option>
          			</select></td> 
				<td> Option : </td>
		 		<td width="0"><select name="opt1"  id="opt1">
            		<option value="stk" > Stock </option>
            		<option value="tranferboi" > Tranfer to Scrap BOI </option>
					<option value="tranfernonboi" > Tranfer to Scrap NON-BOI</option>
          			</select>
				</td> 
		</tr>
				<td  align="center" colspan="4"><input type="submit" name="b_ss"  value="ค้นหา" /></td>
		<table cellpadding="1" cellspacing="1" border="0" align="center" width="100%" bgcolor="#CCCCCC">
				<tr> 
					<td>
						<table cellpadding="1" cellspacing="1" border="0"align="center" width="100%">
							<tr align="center">
								<td><b>เลขที่ Memo</b></td>
								<td><b>สาขา</b></td>
								<td><b>วันที่</b></td>
								<td><b>Name User :</b></td>
								<td><b>Name Admin</b></td>
								<td><b>Method</b></td>
								<td><b>Option</b></td>
								<td><b>PDF</b></td>
							</tr>
				<?
				$sql_more="";
				if(isset($_POST['no_memo']) && trim($_POST['no_memo'])!=""){
					$sql_more.=" AND memo_01='".trim($_POST['no_memo'])."' ";
				}
				if(isset($_POST['branch']) && trim($_POST['branch'])!=""){
					$sql_more.=" AND memo_02='".trim($_POST['branch'])."' ";
				}
				if(isset($_POST['date1']) && trim($_POST['date1'])!=""){
					$sql_more.=" AND memo_03='".trim($_POST['date1'])."' ";
				}
				if(isset($_POST['name_user']) && trim($_POST['name_user'])!=""){
					$sql_more.=" AND memo_04='".trim($_POST['name_user'])."' ";
				}
				if(isset($_POST['name_admin']) && trim($_POST['name_admin'])!=""){
					$sql_more.=" AND memo_05='".trim($_POST['name_admin'])."' ";
				}
				if(isset($_POST['meth1']) && trim($_POST['meth1'])!=""){
					$sql_more.=" AND memo_06='".trim($_POST['meth1'])."' ";
				}			
				if(isset($_POST['opt1']) && trim($_POST['opt1'])!=""){
					$sql_more.=" AND memo_07='".trim($_POST['opt1'])."' ";
				}		
				if(isset($_POST['p_pdf']) && trim($_POST['p_pdf'])!=""){
					$sql_more.=" AND memo_08='".trim($_POST['p_pdf'])."' ";
				}																														
//				if($no_memo&&!$no_memo){
//					//$n_memo="AND memo_01='$no_memo' ";
//					$n_memo=strlen($no_memo) ? " AND memo_01='$no_memo' " : '';
//				}
//				if($branch&&!$branch){
//					//$b_branch="AND memo_02='$branch'";
//					$b_branch=strlen($branch) ? " AND memo_02='$branch' " : '';
//				}
//				if($date1&&!$date1){
//					//$d_date="AND memo_03='$date1'";
//					$d_date=strlen($date1) ? " AND memo_03='$date1' " : '';
//				}
//				if($name_user&&!$name_user){
//					//$n_nameuser="AND memo_04='$name_user'";
//					$n_nameuser=strlen($name_user) ? " AND memo_04='$name_user' " : '';
//				}
//				if($name_admin&&!$name_admin){
//					//$n_admin="AND memo_05='$name_admin'";
//					$m_meth=strlen($meth1) ? " AND memo_06='$meth1' " : '';
//				}
//				if($meth1&&!$meth1){
//					//$m_meth="AND memo_06='$meth1'";
//					$m_meth=strlen($meth1) ? " AND memo_06='$meth1' " : '';
//				}
//				if($opt1&&!$opt1){
//					//$o_opt1="AND memo_07='$opt1'";
//					$o_opt1=strlen($opt1) ? " AND memo_07='$opt1' " : '';
//				}
//				if($pdf&&!$pdf){
//			     	//$p_pdf="AND memo_08='$p_pdf'";
//					$o_opt1=strlen($opt1) ? " AND memo_07='$opt1' " : '';
//				}
					//$host = "localhost";
					//$user = "root";
					//$pass = "1234";
					//$dbname = "find_memo";
					//$tblname = "find_memo01";
	
					//$dbcon = mysql_connect($host,$user,$pass) or die ("Connec't Database");
					//mysql_select_db ($dbname,$dbcon);
					
//					$sql="select * from find_memo01 where memo_02 <> '' $n_memo  $b_branch $d_date $n_nameuser  $n_admin  $m_meth  $o_opt1 $p_pdf";
					$sql="SELECT * FROM find_memo01 WHERE 1 $sql_more ";					
							echo "$sql";
				//echo "==".$dbname;
				
				$result = mysql_db_query($dbname,$sql) or die ("Can't connect to database $dbname"); 
				$d=0;
				While($row=mysql_fetch_array($result)){
				if ($d%2==0)
				{	
					$bg = "#CCFFFF";
				}
				else
				{
					$bg = "#FFFFCC";
				}
				?>
							<tr align="center" bgcolor="<?=$bg;?>">
								<td><?=$row[0];?></td>
								<td><?=$row[1];?></td>
								<td><?=$row[2];?></td>
								<td><?=$row[3];?></td>
								<td><?=$row[4];?></td> 
								<td><?=$row[5];?></td>
								<td><?=$row[6];?></td>
								<td><a href="filepdf/<?=$row[7];?>"><?=$row[7];?></a></td>
								
							</tr>
				<?
				$d++;
				}
				?>
			</table>	
		</tr>
</table>
</form>
</body>
</html>


ninenik 124.122.251.xxx 08-04-2015
1






เว็บไซต์ของเราให้บริการเนื้อหาบทความสำหรับนักพัฒนา โดยพึ่งพารายได้เล็กน้อยจากการแสดงโฆษณา โปรดสนับสนุนเว็บไซต์ของเราด้วยการปิดการใช้งานตัวปิดกั้นโฆษณา (Disable Ads Blocker) ขอบคุณครับ