Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > ผมทำหน้า AjaxPHPShoppingCart อะครับอยากให้มีปุ่ม Del หน้าตารางการของใส่อะครับ



 

ผมทำหน้า AjaxPHPShoppingCart อะครับอยากให้มีปุ่ม Del หน้าตารางการของใส่อะครับ

 



Topic : 055657



โพสกระทู้ ( 31 )
บทความ ( 0 )



สถานะออฟไลน์




อยากให้มีปุ่ม Del หน้าของที่เราซื้ออะครับต้องแทรก code ตรงไหนหรอครับ

กับผมเจอปัญหาเวลามี User 1 คนมาหยิบใส่ตะกร้า ปุ๊บ User คนที่ 2 มาหยิบอีกมันจะไปเข้าตะกร้าคนที่ 1 ด้วยอะครับ

test

Code (PHP)
<?php
ob_start();
session_start();
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<?php
	$strid_pro = $_POST["tid_pro"];
	$strQty = $_POST["tQty"];	

	$objConnect = mysql_connect("localhost","root","root") or die("Error Connect to Database");
	$objDB = mysql_select_db("admin");

	if($strid_pro != "" and $strQty  != "")
	{
		$strSQL = "INSERT INTO cart ";
		$strSQL .="(SID,id_pro,Qty) ";
		$strSQL .="VALUES ";
		$strSQL .="('".session_id()."','".$strid_pro."','".$strQty."') ";
		$objQuery = mysql_query($strSQL);
	}
?>
<center>
<h1>Your Cart</h1>
<table width="408" border="1" cellspacing="0" cellpadding="0">
  <tr>
    <td width="51"><div align="center">ID</div></td>
    <td width="154" height="26"><div align="center">Product</div></td>
    <td width="69"><div align="center">Price</div></td>
    <td width="57"><div align="center">Qty</div></td>
    <td width="65"><div align="center">Total</div></td>
  </tr>
<?
$intSumTotal = 0;
$intRows = 0;
$strSQL = "SELECT * FROM cart  WHERE SID = '".session_id()."' ";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
while($objResult = mysql_fetch_array($objQuery))
{
	$intRows ++;
	$strSQL = "SELECT * FROM product  WHERE id_pro = '".$objResult["id_pro"]."' ";
	$objQueryPro = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
	$objResultPro = mysql_fetch_array($objQueryPro);
	$intTotal = $objResult["Qty"] * $objResultPro["price_pro"];
	$intSumTotal = $intSumTotal + $intTotal;
?>
  <tr>
    <td><div align="center"><?=$intRows;?></div></td>
    <td><?=$objResultPro["name_pro"];?></td>
    <td><div align="right"><?=number_format($objResultPro["price_pro"],2);?></div></td>
    <td><div align="center"><?=$objResult["Qty"];?></div></td>
    <td><div align="right"><?=number_format($intTotal,2);?></div></td>
  </tr>
<?
}
?>    
  <tr>
    <td colspan="4"><div align="right">Total Amount </div></td>
    <td>
	<div align="right"><?=number_format($intSumTotal,2);?></div></td>
  </tr>
</table>
<?
if($intSumTotal > 0)
{
?>
<br><input name="btnCheckOut" type="submit" id="btnCheckOut" value="Check Out" onClick="JavaScript:CheckOut();">
<?
}
?>
</center>
</body>
</html>
<? ob_end_flush() ?>




Tag : PHP, MySQL







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2011-02-07 13:36:14 By : thegunmanolo View : 986 Reply : 10
 

 

No. 1



โพสกระทู้ ( 318 )
บทความ ( 2 )



สถานะออฟไลน์
Facebook

table cart ไม่มี PK แล้วจะลบข้อมูลอย่างไรล่ะครับ
สำหรับเพิ่มบล ก็
ที่
<tr>
<td width="51"><div align="center">Del</div></td>
<td width="51"><div align="center">ID</div></td>
...
</tr>

ในลูปก็แค่เพิ่ม
<tr>
<td><div align="center"> ปุ่มลบ </div></td>
<td><div align="center"><?=$intRows;?></div></td>
..
</tr>
ในปุ่มลบคุณก็ต้องเขียน ajax สำหรับลบสินค้าเอาเองนะ โดยต้องส่ง PK ของตารง cart ไปด้วยจะได้รู้ว่าต้องการลบอันไหน หรือถ้าจะไม่ใช้ PK ก็ไปใช้ รหัสสินค้าแทนแล้วกัน ขึ้นอยู่กับการออกแบบ ของคุณทั้งสิน






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-02-07 17:04:59 By : chineji
 


 

No. 2



โพสกระทู้ ( 31 )
บทความ ( 0 )



สถานะออฟไลน์


ขอบคุณมากครับผมจำนำไปทำดูครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-02-07 17:19:11 By : thegunmanolo
 

 

No. 3



โพสกระทู้ ( 31 )
บทความ ( 0 )



สถานะออฟไลน์


ผมลองดัดแปลงเอาอะครับแต่มันติด error อะครับไม่รู้ว่าถูกไหม

Parse error: syntax error, unexpected $end in C:\AppServ\www\DeleteRecord.php on line 124

DeleteRecord.php
Code (PHP)
<html>
<head>
<title>DVDTHAILAND</title>
<script language="JavaScript">
	   var HttPRequest = false;

	   function doCallAjax(ID) {
		  HttPRequest = false;
		  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 = 'ShoppingCart2.php';
		  var pmeters = "tID="+ID;

			HttPRequest.open('POST',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 == 4) // Return Request
				  {
					 if(HttPRequest.responseText == 'Y')
					  {						  
					  document.getElementById("tr"+ID).style.display = 'none';
					  }
				  }				
			}

	   }
</script>
</head>
<body onLoad="JavaScript:doCallAjax('','')">
<h1>My Cart </h1>
<table width="680" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td width="234" valign="top">
	<?
	$objConnect = mysql_connect("localhost","root","root") or die("Error Connect to Database");
	$objDB = mysql_select_db("admin");
	$strSQL = "SELECT * FROM product ORDER BY id_pro ASC ";
	$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
	echo"<table border=\"0\"  cellspacing=\"1\" cellpadding=\"1\"><tr>";	
	$intRows = 0;
	while($objResult = mysql_fetch_array($objQuery))
	{
	$intRows++;
	echo "<td>";									
	?>
	<img src="../images/<?=$objResult["pic_pro"];?>" width="70" height="61" border="0">
	<center>
	<?=$objResult["name_pro"];?>
	<br>
	<?=$objResult["price_pro"]." Baht";?>
	<br>
	<input type="text" id="txt<?=$intRows;?>" value="" style="width:20px">
	<input type="button" value="Add" onClick="JavaScript:doCallAjax('<?=$objResult["id_pro"];?>', document.getElementById('txt<?=$intRows;?>').value);">
	</center>
<h1>Your Cart</h1>
<table width="408" border="1" cellspacing="0" cellpadding="0">
  <tr>
  <td width="51"><div align="center">Del</div></td>
    <td width="51"><div align="center">ID</div></td>
    <td width="154" height="26"><div align="center">Product</div></td>
    <td width="69"><div align="center">Price</div></td>
    <td width="57"><div align="center">Qty</div></td>
    <td width="65"><div align="center">Total</div></td>
  </tr>
  <?
	while($objResult = mysql_fetch_array($objQuery))
	{
		?>
	  <tr>
  <td><div align="center"><a href="JavaScript:doCallAjax('<?=$objResult["id_pro"];?>');">Del</a></div></td>
    <td><div align="center"><?=$intRows;?></div></td>
    <td><?=$objResultPro["name_pro"];?></td>
    <td><div align="right"><?=number_format($objResultPro["price_pro"],2);?></div></td>
    <td><div align="center"><?=$objResult["Qty"];?></div></td>
    <td><div align="right"><?=number_format($intTotal,2);?></div></td>
  </tr>
	<?
		echo"</td>";
		if(($intRows)%2==0)
		{
		echo"</tr>";
		}
		else
		{
		echo "<td>";
		}	
	}
	echo"</tr></table>";
	?>
	<?
	mysql_close($objConnect);
	?>	
	</td>
    <td width="446" valign="top"><span id="mySpan"></span></td>
  </tr>
</table>
</body>
</html>


DeleteRecord4.php
Code (PHP)
<?php

	$strID = $_POST["tID"];

	$objConnect = mysql_connect("localhost","root","root") or die("Error Connect to Database");
	$objDB = mysql_select_db("mydatabase");

	$strSQL = "DELETE FROM product ";
	$strSQL .="WHERE id_pro = '".$strID."' ";
	$objQuery = mysql_query($strSQL);
	if($objQuery)
	{
		echo "Y";
	}
	else
	{
		echo "N";
	}

	mysql_close($objConnect);
?>



ประวัติการแก้ไข
2011-02-09 00:46:07
2011-02-09 00:46:58
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-02-09 00:45:31 By : thegunmanolo
 


 

No. 4



โพสกระทู้ ( 31 )
บทความ ( 0 )



สถานะออฟไลน์


ขออนุญาติดันนะครับ ขอบคุณครับ

รบกวนทีครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-02-11 08:48:39 By : thegunmanolo
 


 

No. 5



โพสกระทู้ ( 318 )
บทความ ( 2 )



สถานะออฟไลน์
Facebook

มี while loop มาเกินหรือเปล่าครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-02-11 12:54:19 By : chineji
 


 

No. 6



โพสกระทู้ ( 31 )
บทความ ( 0 )



สถานะออฟไลน์


while loop แรกก็ โชว์ My Cart

while loop สองก็โชว์ Your Cart

ผมเข้าใจอะไรผิดปะครับ

ถ้าผิดไปขอโทษทีครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-02-11 14:10:09 By : thegunmanolo
 


 

No. 7



โพสกระทู้ ( 31 )
บทความ ( 0 )



สถานะออฟไลน์


ขออนุญาติดันนะครับ

คือติดตรง del ข้อมูลของตะกร้าสินค้าอะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-02-12 13:44:04 By : thegunmanolo
 


 

No. 8



โพสกระทู้ ( 318 )
บทความ ( 2 )



สถานะออฟไลน์
Facebook

ติดแค่ลบใช่มั้ยครับ add product ไม่มีปัญหาใช่มั้ย
ถ้าเป็นโค้ดที่คุณให้มานั้น มันขาดจุดสิ้นสุดของ loop ตัวแรก ก็คือคุณตก } ไปตัวนึง
ส่วนใน deleterecord.php ก็ควรจะใส่ if ตรวจสอบนิดนึงว่าได้ส่งค่า tid มาหรือเปล่า ไม่ควรให้ทำคำสั่งลบในทันที
ผมดูโค๊ดแล้วก็งงนะ ไม่รู้ว่าทำไมคุณเขียน My Cart กับ Your Cart โดยใช้ตารางเดียวกัน sql ตัวเดียวกัน
ซึ่งที่จริง My Cart จะต้องเป็น product ซึ่งตอนนี้ก็ถูกต้องแล้วแค่เพียงคุณเขียนว่า My Cart เท่านั้นอันนี้แล้วแต่
ส่วน Your Cart นั้นเป็นส่วนที่ผู้ใช้ซื้อสินค้า จับสินค้าใส่ตะกร้า ฉะนั้นมันก็ควรที่จะดึงมาจากตารางตะกร้าสินค้าของลูกค้าคนนั้นถึงจะถูก
อันนี้ผมไม่รู้นะว่าคุณออกแบบมายังไง

แล้วตอนนี้มันติด Error อะไรหรอ? ในส่วนลบข้อมูล
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-02-12 23:34:21 By : chineji
 


 

No. 9



โพสกระทู้ ( 318 )
บทความ ( 2 )



สถานะออฟไลน์
Facebook

ถ้าให้ผมแนะนำมันจะเป็นแบบนี้ (ตย. ผมใช้ jQuery เอานะมันเขียนโค้ดสั้นดี และเป็นแบบสมาชิกล็อกอินแล้ว)

Code (product.php)
<?
session_start();
?>
<html><head><title>test</title>
<script language="javascript" src="jquery.js"></script>
<script language="javascript">
//หยิบสินค้าใส่ตะกร้า (รหัสสินค้า, รหัสสมาชิก)
//เอามาแสดงที่ displayCart

function addToCart(pId,mId) {
    $.ajax({
		type: "POST",url: "read_data.php",data: "action=addProduct&id="+pId+"&mId="+mId+"&dumy="+Math.random(),timeout: 8000,dataType: "text/html",
   		error: function(){alert('Loading time out');},
		beforeSend: function(){$("#displayCart").html("<img src='images/loading.gif'>");}, 
   		success: function(html){$("#displayCart").html(html);}
	});
}

//ลบสินค้าออกจากตะกร้า (รหัสสินค้า,รหัสสมาชิก)
function deleteProduct(pId,mId){
      $.ajax({
		type: "POST",url: "read_data.php",data: "action=delProduct&pId="+id+"&mId="+mId+"&dumy="+Math.random(),timeout: 8000,dataType: "text/html",
   		error: function(){alert('Loading time out');},
		beforeSend: function(){$("#displayCart").html("<img src='images/loading.gif'>");},
   		success: function(html){$("#displayCart").html(html);}
	});
}

//แสดงสินค้า (รหัสสมาชิก)
function listProduct(mId){
      $.ajax({
		type: "POST",url: "read_data.php",data: "action=listProduct&pId="+id+"&mId="+mId+"&dumy="+Math.random(),timeout: 8000,dataType: "text/html",
   		error: function(){alert('Loading time out');},
		beforeSend: function(){$("#displayCart").html("<img src='images/loading.gif'>");},
   		success: function(html){$("#displayCart").html(html);}
	});
}
</script>
</head>
<body>
<table boder="0" width="600">
<tr><td width="220">
       $strSQL = "SELECT * FROM product ORDER BY id_pro ASC ";
	$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
	echo"<table border=\"0\"  cellspacing=\"1\" cellpadding=\"1\"><tr>";	
	$intRows = 0;
	while($objResult = mysql_fetch_array($objQuery))
	{
	     $intRows++;									
	?>
            <div style="float:left; width:100px; height:110px; margin:4px; text-align:center;">
	   <img src="../images/<?=$objResult["pic_pro"];?>" width="70" height="61" border="0">
	   <?=$objResult["name_pro"];?><br>
	   <?=$objResult["price_pro"]." Baht";?><br>
	   <input type="text" id="txt<?=$intRows;?>" value="" style="width:20px">
	   <input type="button" value="Add" onClick="addToCart('<?=$objResult["id_pro"];?>', '<?=$_SESSION["member_id"];?>');">
         </div>
        <?
        }          
        ?>
</td>
<td><div id="displayCart"><script language="javascript"> listProduct('<?=$_SESSION["member_id"];?>');</script></div></td>
</tr>
</table>
</body>
</html>



Code (read_data.php)
session_start();
include("connect.php"); //connect database
function listCart($mId){
?>
     <h1>Your Cart</h1>
      <table width="408" border="1" cellspacing="0" cellpadding="0">
      <tr>
      <td width="51"><div align="center">Del</div></td>
      <td width="51"><div align="center">ID</div></td>
      <td width="154" height="26"><div align="center">Product</div></td>
      <td width="69"><div align="center">Price</div></td>
      <td width="57"><div align="center">Qty</div></td>
      <td width="65"><div align="center">Total</div></td>
     </tr>
<?
     $sql select * from product where mId=".$_POST["mId"].";
     $objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
     while($objResult = mysql_fetch_array($objQuery)){
          ?>  
           <tr>
         <td><div align="center"><a href="JavaScript:delProduct('<?=$objResult["id_pro"];?>','<?=$_SESSION["member_id"]?>');">Del</a></div></td>
         <td><div align="center"><?=$intRows;?></div></td>
         <td><?=$objResultPro["name_pro"];?></td>
         <td><div align="right"><?=number_format($objResultPro["price_pro"],2);?></div></td>
         <td><div align="center"><?=$objResult["Qty"];?></div></td>
         <td><div align="right"><?=number_format($intTotal,2);?></div></td>
         </tr>
          <?
     }
}


if($_POST["action"]=="listProduct" && isset($_POST["mId"])){
      listCart($_POST["mId"]);
}else if($_POST["action"]=="addProduct" && isset($_POST["mId"])){
     //sql add product
     listCart($_POST["mId"]);
}else if($_POST["action"]=="delProduct" && isset($_POST["mId"]) && isset($_POST["pId"])){
     //sql delete product
    listCart($_POST["mId"]);
}



ประวัติการแก้ไข
2011-02-13 00:40:24
2011-02-13 00:42:57
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-02-13 00:39:24 By : chineji
 


 

No. 10



โพสกระทู้ ( 31 )
บทความ ( 0 )



สถานะออฟไลน์


ผมจะลองทำตามดูนะครับ ผมไม่อยากรบกวนเลยอะครับ ช่วยผมมากจริงๆ ผมเกรงใจจริงๆครับ

ขอบคุณมากๆครับผมติดตรงนี้จริงๆๆครับ


ประวัติการแก้ไข
2011-02-13 05:14:05
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-02-13 05:12:16 By : thegunmanolo
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ผมทำหน้า AjaxPHPShoppingCart อะครับอยากให้มีปุ่ม Del หน้าตารางการของใส่อะครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 03
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่