|
|
|
สินค้าเปลี่ยนไป ตามลักษณะการเลือก สี ขนาด ดัดแปลงจาก auto fill PHP AJAX |
|
|
|
|
|
|
|
ลองทำ สินค้าเปลี่ยนไป ตามลักษณะการเลือก ลักษณะเลือกสีเลือกขนาด มันดัดแปลงกับ auto fill PHP AJAX แล้วได้ครับ แต่เวลา LOAD เพจมาครั้งแรกแล้วไม่ขึ้น ผมลองทำ
Onload มันก็ยังไม่ออกครับ รบกวนช่วยแนะนำด้วยครับ
ขอบคุณครับ
AjaxAutoFill
Code (PHP)
<?php
/*** By Weerachai Nukitram ***/
/*** http://www.ThaiCreate.Com ***/
?>
<html>
<head>
<title>ThaiCreate.Com Ajax Tutorial</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<script language="JavaScript">
var HttPRequest = false;
function checkBrowser(){
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");
HttPRequest = new ActiveXObject("MSXML2.XMLHTTP.3.0");
} catch (e) {
try {
HttPRequest = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
if (!HttPRequest) {
alert('Cannot create XMLHTTP instance');
return false;
}
}
function TestLoad(fProductID) {
doCallProduct(fProductID)
alert(fProductID);
}
function doCallProduct(fProductID,fProductName,fProductCode,fProductSKU,fPrice,fDescription,fDetail,fQuantityStock,fWeight,fProConditionName,fStoreName,fAvailableStock) {
//alert(fProductID);
HttPRequest = false;
checkBrowser();
var url = 'AjaxGetFill.php';
var pmeters = "tProductID=" + encodeURI( document.getElementById(fProductID).value);
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 == 3) // Loading Request
//{
//document.getElementById(fProductName).innerHTML = "..";
//}
if(HttPRequest.readyState == 4) // Return Request
{
var myProduct = HttPRequest.responseText;
if(myProduct != "")
{
var myArr = myProduct.split("|");
document.getElementById(fProductName).innerHTML = myArr[0];
document.getElementById(fProductCode).innerHTML = myArr[1];
document.getElementById(fProductSKU).innerHTML = myArr[2];
document.getElementById(fPrice).innerHTML = myArr[3];
document.getElementById(fDescription).innerHTML = myArr[4];
document.getElementById(fDetail).innerHTML = myArr[5];
document.getElementById(fQuantityStock).innerHTML = myArr[6];
document.getElementById(fWeight).innerHTML = myArr[7];
document.getElementById(fProConditionName).innerHTML = myArr[8];
document.getElementById(fStoreName).innerHTML = myArr[9];
document.getElementById(fAvailableStock).innerHTML = myArr[10];
//alert(document.getElementById(fQuantity).innerHTML = myArr[6]);
var AvailableStock = document.getElementById(fQuantityStock).innerHTML = myArr[6];
if ( AvailableStock <= 0) {
disableBtnAddCart();
} else {
undisableBtnAddCart();
}
}
}
}
}
function doCallAjax() {
//alert(doCallAjax);
HttPRequest = false;
checkBrowser();
var url = 'AjaxPHPLoginForm2.php';
/*var pmeters = "tProductID=" + encodeURI( document.getElementById("txtProductID").value) +
"&tQuantity=" + encodeURI( document.getElementById("txtQuantity").value ) +
"&tSize=" + encodeURI( document.getElementById("txtSize").value ) +
"&tColor=" + encodeURI( document.getElementById("txtColor").value );*/
var pmeters = "tProductID=" + encodeURI( document.getElementById("txtProductID").value) +
"&tQuantity=" + encodeURI( document.getElementById("txtQuantity").value ) +
"&tSize=" + encodeURI( document.getElementById("txtSize").value ) +
"&tColor=" + encodeURI( document.getElementById("txtColor").value );
//alert(pmeters);
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 == 3) // Loading Request
{
document.getElementById("mySpan").innerHTML = "Now is Loading...";
}
if(HttPRequest.readyState == 4) // Return Request
{
if(HttPRequest.responseText == 'Y')
{
window.location = 'AjaxPHPLoginForm3.php';
}
else
{
document.getElementById("mySpan").innerHTML = HttPRequest.responseText;
}
}
}
}
</script>
<body Onload="JavaScript:TestLoad(1);">
<form name="frmMain">
<span id="mySpan"></span>
<input type="text" name="txtProductID" id="txtProductID" size="5" OnChange="JavaScript:doCallProduct('txtProductID','txtProductName','txtProductCode','txtProductSKU','txtPrice','txtDescription','txtDetail','txtQuantityStock','txtWeight',
'txtProConditionName','txtStoreName','txtAvailableStock');">
<select name="txtSize" size="1" id="txtSize">
<option value=""></option>
<option value="S">S</option>
<option value="M">M</option>
<option value="L">L</option>
</select>
<select name="txtColor" size="1" id="txtColor">
<option value=""></option>
<option value="Blue">Blue</option>
<option value="Green">Green</option>
<option value="Red">Red</option>
</select>
<b>จำนวน:</b> <input type="number" name="txtQuantity" id="txtQuantity" value="1" min="1">
<!--<button id="BtnAddCart" name="BtnAddCart" OnClick="JavaScript:doCallAjax();">หยิบใส่รถเข็น</button>-->
<input name="BtnAddCart" type="button" id="BtnAddCart" OnClick="JavaScript:doCallAjax();" value="หยิบใส่รถเข็น">
<br>
ชื่อสินค้า : <pre id="txtProductName" name="txtProductName"></pre>
รหัสสินค้า : <pre id="txtProductCode" name="txtProductCode"></pre>
SKU : <pre id="txtProductSKU" name="txtProductSKU"></pre>
ราคา : <pre id="txtPrice" name="txtPrice"></pre>
จำนวนในสต๊อก : <pre id="txtQuantityStock" name="txtQuantityStock"></pre>
น้ำหนัก : <pre id="txtWeight" name="txtWeight"></pre>
คุณสมบัติ : <pre id="txtDescription" name="txtDescription"></pre>
รายละเอียด : <pre id="txtDetail" name="txtDetail"></pre>
ลักษณะสินค้า : <pre id="txtProConditionName" name="txtProConditionName"></pre>
ร้านค้า : <pre id="txtStoreName" name="txtStoreName"></pre>
สถานะ : <pre id="txtAvailableStock" name="txtAvailableStock"></pre>
</form>
<script>
function disableBtnAddCart() {
document.getElementById("BtnAddCart").disabled = true;
}
function undisableBtnAddCart() {
document.getElementById("BtnAddCart").disabled = false;
}
</script>
</body>
</html>
AjaxGetFill
Code (PHP)
<?php
/*** By Weerachai Nukitram ***/
/*** http://www.ThaiCreate.Com ***/
$strProduct = trim($_POST["tProductID"]);
$objConnect = mysql_connect("localhost","root","1234") or die("Error Connect to Database");
$objDB = mysql_select_db("inventory");
//$strSQL = "SELECT * FROM tb_product WHERE ProductID = '".$strProduct."' ";
mysql_query("SET NAMES UTF8");
$strSQL = "SELECT * FROM tb_product LEFT JOIN tb_product_lang ON tb_product_lang.ProductID = tb_product.ProductID
LEFT JOIN tb_product_condition ON tb_product_condition.ProConditionID = tb_product.ProConditionID
WHERE tb_product.ProductID = '".$strProduct."' ";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
$objResult = mysql_fetch_array($objQuery);
if($objResult)
{
if ($objResult["Quantity"] <= '0' or $objResult["Quantity"] == '')
{
$AvailableStock = $objResult["AvailableOutStock"];
$Quantity = "0";
} else {
$AvailableStock = $objResult["AvailableInStock"];
$Quantity = $objResult["Quantity"];
}
$strSQL_Store = "SELECT * FROM tb_store WHERE StoreID = '$objResult[StoreID]' ";
$objQuery_Store = mysql_query($strSQL_Store) or die ("Error Query [".$strSQL_Store."]");
$objResult_Store = mysql_fetch_array($objQuery_Store);
//$StoreName = $objResult_Store["StoreName"];
echo $objResult["ProductName"].
"|".$objResult["ProductCode"].
"|".$objResult["ProductSKU"].
"|".$objResult["Price"].
"|".$objResult["Description"].
"|".$objResult["Detail"].
"|".$Quantity.
"|".$objResult["Weight"].
"|".$objResult["ProConditionName"].
"|".$objResult_Store["StoreName"].
"|".$AvailableStock;
}
mysql_close($objConnect);
?>
AjaxPHPLoginForm2
Code (PHP)
<?php
/*** By Weerachai Nukitram ***/
/*** http://www.ThaiCreate.Com ***/
session_start();
$strProductID = trim($_POST["tProductID"]);
$strQuantity = trim($_POST["tQuantity"]);
$strSize = trim($_POST["tSize"]);
$strColor = trim($_POST["tColor"]);
$objConnect = mysql_connect("localhost","root","1234") or die("Error Connect to Database");
$objDB = mysql_select_db("inventory");
mysql_query("SET NAMES UTF8");
$strSQL = "SELECT * FROM tb_product LEFT JOIN tb_product_lang ON tb_product_lang.ProductID = tb_product.ProductID
LEFT JOIN tb_product_condition ON tb_product_condition.ProConditionID = tb_product.ProConditionID
WHERE tb_product.ProductID = '".$strProduct."' ";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
$objResult = mysql_fetch_array($objQuery);
//*** Check Username ***//
if(trim($strProductID) == "")
{
echo "<font color=red>**</font> Plase input [รหัสสินค้า]";
exit();
}
//*** Check Username ***//
if(trim($strQuantity) == "")
{
echo "<font color=red>**</font> Plase input [จำนวน]";
exit();
}
if(trim($strQuantity) <= $objResult["Quantity"])
{
echo "<font color=red>**</font> Plase input [จำนวนในสต๊อกไม่พอ]";
exit();
}
if(trim($strSize) == "")
{
echo "<font color=red>**</font> Plase input [Size]";
exit();
}
if(trim($strColor) == "")
{
echo "<font color=red>**</font> Plase input [Color]";
exit();
}
//$objConnect = mysql_connect("localhost","root","root") or die("Error Connect to Database");
//$objDB = mysql_select_db("mydatabase");
//*** Check Username & Password ***//
//$strSQL = "SELECT * FROM account WHERE Username = '".$strUsername."' and Password = '".$strPassword."' ";
//$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
//$objResult = mysql_fetch_array($objQuery);
//if($objResult)
//{
echo "Y";
//*** Session ***//
// $_SESSION["Username"] = $strUsername;
// session_write_close();
//}
//else
//{
// echo "<font color=red>**</font> Username & Password is wrong";
//}
//mysql_close($objConnect);
?>
Code (SQL)
--
-- โครงสร้างตาราง `tb_product`
--
CREATE TABLE `tb_product` (
`ProductID` int(10) NOT NULL auto_increment,
`ProductCode` varchar(20) NOT NULL,
`ProductSKU` varchar(15) NOT NULL,
`Barcode` varchar(20) NOT NULL,
`Price` varchar(10) NOT NULL,
`PriceDiscount` varchar(10) NOT NULL,
`PriceCost` double NOT NULL,
`Weight` double NOT NULL,
`DiscountStart` varchar(20) NOT NULL,
`DiscountEnd` varchar(20) NOT NULL,
`Quantity` int(10) NOT NULL,
`SupplierID` int(5) NOT NULL,
`AddDate` datetime NOT NULL,
`UpDate` datetime NOT NULL,
`UserID` varchar(20) NOT NULL,
`ProductKey` varchar(30) NOT NULL,
`ProductStatus` set('on','off') default 'on',
`ProConditionID` int(10) NOT NULL,
`StoreID` int(10) NOT NULL,
PRIMARY KEY (`ProductID`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=6 ;
--
-- dump ตาราง `tb_product`
--
INSERT INTO `tb_product` VALUES (1, '500623506', 'sku500623506', '', '50', '45', 25, 0.25, '', '', 500, 0, '2015-07-20 00:19:55', '0000-00-00 00:00:00', '1', 'arY95IyUZX', 'on', 1, 3);
INSERT INTO `tb_product` VALUES (2, '500623506', 'SKU500623506', 'SKU500623506', '50', '45', 25, 0.015, '20-07-2015', '31-07-2015', -135, 0, '2015-07-20 01:35:45', '0000-00-00 00:00:00', '1', 'vVBanyP0iY', 'on', 1, 3);
--
-- โครงสร้างตาราง `tb_product_lang`
--
CREATE TABLE `tb_product_lang` (
`ProductLangID` int(10) NOT NULL auto_increment,
`ProductID` int(10) NOT NULL,
`LangID` int(10) NOT NULL,
`ProductName` longtext NOT NULL,
`Description` mediumtext NOT NULL,
`Detail` longtext NOT NULL,
`AvailableInStock` varchar(300) NOT NULL,
`AvailableOutStock` varchar(300) NOT NULL,
PRIMARY KEY (`ProductLangID`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=6 ;
--
-- dump ตาราง `tb_product_lang`
--
INSERT INTO `tb_product_lang` VALUES (1, 1, 1, 'ถุงซิปตั้ง หน้าใส หลังฟอยล์ ขนาด 9*15 ซม. หนา 200 ...', 'ถุงซิปตั้ง หน้าใส หลังฟอยล์ ขนาด 9*15 ซม. หนา 200 ...', 'ถุงซิปตั้ง หน้าใส หลังฟอยล์ ขนาด 9*15 ซม. หนา 200 ...', 'มีสินค้าพร้อมส่ง', 'ไม่มีสินค้าพร้อมส่ง');
INSERT INTO `tb_product_lang` VALUES (2, 2, 1, 'ถุงซิปตั้ง หน้าใส หลังฟอยล์ ขนาด 9*15 ซม. หนา 200 ไมครอน', '<p>ถุงซิปตั้ง หน้าใส หลังฟอยล์ ขนาด 9*15 ซม. หนา 200 ไมครอน</p>\r\n', '<p>ถุงซิปตั้ง หน้าใส หลังฟอยล์ ขนาด 9*15 ซม. หนา 200 ไมครอน</p>\r\n\r\n<p>ถุงซิปตั้ง หน้าใส หลังฟอยล์ ขนาด 9*15 ซม. หนา 200 ไมครอน</p>\r\n\r\n<p>ถุงซิปตั้ง หน้าใส หลังฟอยล์ ขนาด 9*15 ซม. หนา 200 ไมครอน</p>\r\n\r\n<p>ถุงซิปตั้ง หน้าใส หลังฟอยล์ ขนาด 9*15 ซม. หนา 200 ไมครอน</p>\r\n', '', '');
--
-- โครงสร้างตาราง `tb_product_condition`
--
CREATE TABLE `tb_product_condition` (
`ProConditionID` int(10) NOT NULL auto_increment,
`ProConditionName` varchar(100) NOT NULL,
`ProConditionStatus` int(2) NOT NULL,
PRIMARY KEY (`ProConditionID`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ;
--
-- dump ตาราง `tb_product_condition`
--
INSERT INTO `tb_product_condition` VALUES (1, 'สินค้าใหม่', 1);
INSERT INTO `tb_product_condition` VALUES (2, 'สินค้าลดราคา', 1);
Tag : PHP, MySQL, Ajax, JAVA
|
|
|
|
|
|
Date :
2015-09-18 11:04:05 |
By :
mayabasic |
View :
913 |
Reply :
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ในช่อง textbox ให้ใส่เป็น ID ของสินค้า เช่น 1,2 ลงไป
รายละเอียดของสินค้าก็จะขึ้นแสดง
แต่ผมอยากให้เลข 1 มันโหลดขึ้นเลยตอนที่หน้าเพจโหลดเสร็จ ครับ
แต่ทำยังไงก็ไม่สามารถโหลด ID ที่ต้องการที่โหลดขึ้นมาได้ครับ
รบกวนด้วยครับ
|
|
|
|
|
Date :
2015-09-18 11:10:14 |
By :
mayabasic |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 03
|