के बाद सत्र कार्ट में वर्गों और पैक जोड़ने के लिए एक AJAX कार्यक्षमता का एक हिस्सा है: -बूलियन चर AJAX के माध्यम से पोस्ट सर्वर साइड में तारों के रूप में इलाज किया जा रहा
jQuery हिस्सा
function addClassToCart(itemId)
{
addItemToCart(itemId,true);
}
function addPackToCart(itemId)
{
addItemToCart(itemId,false);
}
function addItemToCart(itemId,isClass)
{
$.post(url+"/ajax/add_cart", { operation: 'add_cart','isClass':isClass, 'itemId': itemId},
function(data)
{
if(data.success)
{
alert("item added to cart");
}
}, "json");
}
AJAX अनुरोध प्रसंस्करण php हिस्सा -
//Checking operation and other posted parameters
if($_POST['isClass'])
{
//Code to add class to session cart
}
else
{
//Code to add pack to session cart
}
अजीब बात
कोई फर्क नहीं पड़ता कि क्या मैं सही/गलत पारित (addClassToCart() और addPackToCart() कॉल करके), हमेशा कोड को सत्र गाड़ी कार्यान्वित वर्ग को जोड़ने के लिए।
अगर मैं इस तरह वहाँ गूंज बयान कर दिया: -
if($_POST['isClass'])
{
echo "see if condition ".$_POST['isClass'];
}
else
{
echo "see else condition ".$_POST['isClass'];
}
यह आउटपुट है: -
addClassToCart() see if condition true
addPackToCart() see if condition false
jQuery में इस तरह की स्थिति लाना कोड हालांकि ठीक काम करता है: -
function addItemToCart(itemId,isClass)
{
if(isClass)
alert("is class");
else
alert("is pack");
}
अंत में, यदि मैं यह करने के लिए सर्वर साइड कोड में परिवर्तन: -
addClassToCart() see else condition true
addPackToCart() see else condition false
तो, क्यों बूलियन है -
if($_POST['isClass'] === true)
{
echo "see if condition ".$_POST['isClass'];
}
else
{
echo "see else condition ".$_POST['isClass'];
}
इन outputs हैं परिवर्तनीय यहाँ एक स्ट्रिंग के रूप में इलाज किया? क्या मैं पैरामीटर पोस्ट करने में कुछ गलत कर रहा हूं?
धन्यवाद, Sandeepan
यह निश्चित रूप से * अप्रत्याशित * नहीं है। सब कुछ 'GET' या' POST' के माध्यम से PHP से गुजरता है तार हैं। – NullUserException
हाँ अब मैं देख रहा हूं ... मेरे प्रश्न शीर्षक संपादित –