我做了我建立做一個購物車的JavaScript代碼,但即使我不點擊它運行這些代碼:爲什麼加入時,它不會被調用
function addProduct(prodId) {
var sessionDivId = document.getElementById(prodId);
if (prodId) {
sessionDivId.innerHTML = '<?= $_SESSION['product_id_1']+=1 ?>';
}
}
<div onclick="addProduct('testSession1');">ADD</div>
<div id="testSession1"></div>
每次刷新網站時,即使我沒有點擊「添加」按鈕,它也會將1
添加到會話testSession1
。
不要忘記,PHP在JavaScript之前執行,所以即使JavaScript沒有在瀏覽器中執行,服務器已經處理了PHP。在這種情況下,服務器將看到呼叫將1添加到會話變量,因此將添加它。如果你需要達到這個目的,最好的方法是使用ajax來調用一個添加到session變量的php腳本。 – RamRaider
我從來沒有使用AJAX,我搜索了它,但人們給我太寬的東西,當我只想要一些東西開始,所以我可以自己建立:)如果你可以提供的東西編號感激 –
如果你要忽略阿賈克斯你可以可能會讓JavaScript將表單提交到同一頁面,然後測試POST - 一旦您有POST請求,那麼您可以增加會話變量。即:'if($ _SERVER ['REQUEST_METHOD'] =='POST'){/ * increment session var * /}' – RamRaider