  | 
              
	              
	                
  
    
	 
        ช่วยด้วยค่ะ เรื่อง ajax ลองทำตามตัวอย่างในเวปไทยครีเอทก็ยังไม่ได้อ่ะค่ะ ไม่รู้ว่าผิดตรงไหน ช่วยดูให้หน่อยนะคะ     | 
   
  
    |   | 
   
 
 
 
	
		
			  | 
	   | 
	    | 
		
			  | 
	 
	
		
			  | 
		 		   | 
	  	    
          
            
			
	
			
			 
                ตัวอย่างจากลิ้งนี้อ่ะค่ะ https://www.thaicreate.com/tutorial/ajax-search-record.html  
 
แต่จะทำแบบเลือกดรอปดาวน์ลิส แล้วส่งค่าไปหาจากเอสคิวแอล 
 
นี่เป็นโค้ชหน้าหลักค่ะ 
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>Untitled Document</title>
<script language="JavaScript">
	   var HttPRequest = false;
	   function getProDetail(Psize) {
		  HttPRequest = false;
		  <? $Pname= $_GET["Pname"]; ?> // เรียกใช้ Pname จากลิ้ง ด้วยค่ะ
		  
		  if (window.XMLHttpRequest) { // Mozilla, Safari,...
			 HttPRequest = new XMLHttpRequest();
			 if (HttPRequest.overrideMimeType) {
				HttPRequest.overrideMimeType('text/html');
			 }
		  } else if (window.ActiveXObject) { // IE
			 try {
				HttPRequest = new ActiveXObject("Msxml2.XMLHTTP");
			 } catch (e) {
				try {
				   HttPRequest = new ActiveXObject("Microsoft.XMLHTTP");
				} catch (e) {}
			 }
		  } 
		  
		  if (!HttPRequest) {
			 alert('Cannot create XMLHTTP instance');
			 return false;
		  }
	
			var url = 'getdetail.php?Pname=$Pname'; // ส่งค่า Pname ไปใช้ด้วย
			var pmeters = 'Psize='+Psize; // ส่งค่า Psize จากดรอปดาวน์ลิสไปด้วย
			HttPRequest.open('GET',url,true);
			HttPRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
			HttPRequest.setRequestHeader("Content-length", pmeters.length);
			HttPRequest.setRequestHeader("Connection", "close");
			HttPRequest.send(pmeters);
			
			
			HttPRequest.onreadystatechange = function()
			{
				 if(HttPRequest.readyState == 3)  // Loading Request
				  {
				   document.getElementById("mySpan").innerHTML = "Now is Loading...";
				  }
				 if(HttPRequest.readyState == 4) // Return Request
				  {
				   document.getElementById("mySpan").innerHTML = HttPRequest.responseText;
				  }
				
			}
	   }
	</script>
</head>
<body Onload="JavaScript:getProDetail('');">
<? include('onlineshop.inc.php');?>
<form>
<?
$PID = $_GET['PID'];
		
		$sql = "SELECT * FROM product WHERE Product_Id = '$PID'";
		$result = mysql_query($sql);
		$p = mysql_fetch_array($result);
		
		//$Pname=$p['Product_Name'];
		$Ppic=$p['Product_Pict'];
		$Pdesc=$p['Product_Des'];
		
		echo "<img align=center src='$Ppic'> <br>";
		echo "<span id='mySpan'></span>";
		echo "<div align=center> <b> $Pname </b></div> <br>";
		echo "<div align=center> $Pdesc </div> <br>";
		echo "<div align='left'> <select name='Psize' id='Psize' "?> onchange="JavaScript:getProDetail(this.value)";<? echo ">";
                $sql = "select * from size";
				$dbquery = mysql_db_query($dbname, $sql);
				$num_rows = mysql_num_rows($dbquery);
				$i=0;	
				print "<option value='x'> Please Select Size</option>";
				while ($i < $num_rows)
					{
					$resultSize = mysql_fetch_array($dbquery);
					$size_id = $resultSize[Size_Id];
					$size_name = $resultSize[Size_Name];
            		print "<option value=$size_id> $size_name </option>";
					$i++;
					} 
		echo "</div>";
		
?>
</form>
</body>
</html>
 
 
 
นี่เป็นโค้ชหน้าที่ไปหาในเดต้าเบสค่ะ 
Code (PHP) 
<?php
$Pname=$_GET["Pname"];
$Psize=$_GET["Psize"];
include('onlineshop.inc.php');
$sql="SELECT * FROM product WHERE Product_Name = '".$Pname."' AND Size_Id = '".$Psize."'";
$result = mysql_query($sql);
echo "$Psize"; // แค่ลองเอา Psize ที่รับมาจากเอแจ็กออกมาโชว์ มันยังไม่โชเลยค่ะ
echo "<table border='1'>
<tr>
<th>Firstname</th> // อันนี้มันโชว์ตั้งแต่ยังไม่ได้เลือก size เลยค่ะ
<th>Lastname</th> // อันนี้มันโชว์ตั้งแต่ยังไม่ได้เลือก size เลยค่ะ
<th>Age</th>// อันนี้มันโชว์ตั้งแต่ยังไม่ได้เลือก size เลยค่ะ
<th>Hometown</th>// อันนี้มันโชว์ตั้งแต่ยังไม่ได้เลือก size เลยค่ะ
<th>Job</th>// อันนี้มันโชว์ตั้งแต่ยังไม่ได้เลือก size เลยค่ะ
</tr>";
while($row = mysql_fetch_array($result))
  {
  echo "<tr>";    // ไม่ขึ้นเลยค่ะ
  echo "<td>" . $row['Product_Id'] . "</td>"; // ไม่ขึ้นเลยค่ะ
  echo "<td>" . $row['Product_Name'] . "</td>"; // ไม่ขึ้นเลยค่ะ
  echo "<td>" . $row['Size_Id'] . "</td>"; // ไม่ขึ้นเลยค่ะ
  echo "<td>" . $row['Product_Prices'] . "</td>"; // ไม่ขึ้นเลยค่ะ
  echo "<td>" . $row['Product_Quan'] . "</td>"; // ไม่ขึ้นเลยค่ะ
  echo "</tr>";
  }
echo "</table>";
?>
 
 
ลองแก้ไปแก้มา ก้อยังไม่ได้อ่ะค่ะ 
ใครรู้ว่าผิดตรงไหนรบกวนด้วยนะคะ ไม่ไหวจิงจิง
 
 
  Tag : PHP, MySQL, HTML/CSS, JavaScript, Ajax               
                        | 
           
          
            | 
			
                             | 
           
          
            
              
                   | 
                   | 
                   | 
               
              
                   | 
                
                    
                      | Date :
                          2012-03-11 12:09:39 | 
                      By :
                          gellarjung | 
                      View :
                          1055 | 
                      Reply :
                          5 | 
                     
                  | 
                   | 
               
              
                   | 
                   | 
                   | 
               
              | 
           
          
            | 
			 | 
           
         
	    
		             | 
		
			  | 
	 
	
		
			  | 
		  | 
		
			  | 
		
			  | 
	 
 
              
  
          
		
     
		
	  
        
             | 
            | 
            | 
             | 
         
        
             | 
                       | 
          
            
               
                 Code (PHP) 
$sql="SELECT * FROM product WHERE Product_Name = '".$Pname."' AND Size_Id = '".$Psize."'";
echo $sql;
  
 
ลองออกมาดูด้วยครับ                        
               
               | 
             
            
              
			  			  
			                              
                              
              
                
                     | 
                     | 
                     | 
                 
                
                     | 
                  
                      
                        | Date :
                            2012-03-11 18:59:04 | 
                        By :
                            webmaster | 
                         
                    | 
                     | 
                 
                
                     | 
                     | 
                     | 
                 
                | 
             
           
			         | 
             | 
         
        
             | 
            | 
             | 
             | 
         
          
	    
     
               
		
     
		
	  
        
             | 
            | 
            | 
             | 
         
        
             | 
                       | 
          
            
               
                 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>Untitled Document</title>
<script language="JavaScript">
	   var HttPRequest = false;
	   function getProDetail(Psize) {
		  HttPRequest = false;
		  var Pname = '<? echo $_GET["Pname"]; ?>'; // เรียกใช้ Pname จากลิ้ง ด้วยค่ะ ##แก้ตรงนี้
		  
		  if (window.XMLHttpRequest) { // Mozilla, Safari,...
			 HttPRequest = new XMLHttpRequest();
			 if (HttPRequest.overrideMimeType) {
				HttPRequest.overrideMimeType('text/html');
			 }
		  } else if (window.ActiveXObject) { // IE
			 try {
				HttPRequest = new ActiveXObject("Msxml2.XMLHTTP");
			 } catch (e) {
				try {
				   HttPRequest = new ActiveXObject("Microsoft.XMLHTTP");
				} catch (e) {}
			 }
		  } 
		  
		  if (!HttPRequest) {
			 alert('Cannot create XMLHTTP instance');
			 return false;
		  }
	
			var url = 'getdetail.php?Pname=' + Pname; // ส่งค่า Pname ไปใช้ด้วย ##แก้ตรงนี้
			var pmeters = 'Psize='+Psize; // ส่งค่า Psize จากดรอปดาวน์ลิสไปด้วย
			HttPRequest.open('GET',url,true);
			HttPRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
			HttPRequest.setRequestHeader("Content-length", pmeters.length);
			HttPRequest.setRequestHeader("Connection", "close");
			HttPRequest.send(pmeters);
			
			
			HttPRequest.onreadystatechange = function()
			{
				 if(HttPRequest.readyState == 3)  // Loading Request
				  {
				   document.getElementById("mySpan").innerHTML = "Now is Loading...";
				  }
				 if(HttPRequest.readyState == 4) // Return Request
				  {
				   document.getElementById("mySpan").innerHTML = HttPRequest.responseText;
				  }
				
			}
	   }
	</script>
</head>
<body Onload="JavaScript:getProDetail('');">
<? include('onlineshop.inc.php');?>
<form>
<?
$PID = $_GET['PID'];
		
		$sql = "SELECT * FROM product WHERE Product_Id = '$PID'";
		$result = mysql_query($sql);
		$p = mysql_fetch_array($result);
		
		//$Pname=$p['Product_Name'];
		$Ppic=$p['Product_Pict'];
		$Pdesc=$p['Product_Des'];
		
		echo "<img align=center src='$Ppic'> <br>";
		echo "<span id='mySpan'></span>";
		echo "<div align=center> <b> $Pname </b></div> <br>";
		echo "<div align=center> $Pdesc </div> <br>";
		echo "<div align='left'> <select name='Psize' id='Psize' "?> onchange="JavaScript:getProDetail(this.value)";<? echo ">";
                $sql = "select * from size";
				$dbquery = mysql_db_query($dbname, $sql);
				$num_rows = mysql_num_rows($dbquery);
				$i=0;	
				print "<option value='x'> Please Select Size</option>";
				while ($i < $num_rows)
					{
					$resultSize = mysql_fetch_array($dbquery);
					$size_id = $resultSize[Size_Id];
					$size_name = $resultSize[Size_Name];
            		print "<option value=$size_id> $size_name </option>";
					$i++;
					} 
		echo "</div>";
		
?>
</form>
</body>
</html>
                        
               
               | 
             
            
              
			                              
                              
              
                
                     | 
                     | 
                     | 
                 
                
                     | 
                  
                      
                        | Date :
                            2012-03-11 19:37:23 | 
                        By :
                            ex | 
                         
                    | 
                     | 
                 
                
                     | 
                     | 
                     | 
                 
                | 
             
           
			         | 
             | 
         
        
             | 
            | 
             | 
             | 
         
          
	    
     
               
		
     
		
	     
	    
     
               
		
     
		
	     
	    
     
               
		
     
		
	     
	    
     
      		  
	
     | 
   
 
                 |