[英]How to update cart quantity using ajax,jquery,php and sessions
[英]Sessions not setting using jquery and ajax
我有這段代碼,它使用jquery和ajax向另一個頁面發送請求,即
<html>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
<input type="button" id="butt" value="button11111111111111" >
</html>
<script>
$("#butt").on('click',function(e)
{
$.ajax(
{
type:'POST',
url:'testmysql.php',
data:
{
product_type:"cake";
}
});
});
</script>
當我單擊上面的按鈕時,它應該將請求和數據發送到其他文件testmysql.php
<?php
session_start();
$_SESSION['type']=$_POST['product_type'];
echo $_SESSION['type'];
?>
但是,當我單擊按鈕后刷新另一頁時,我看不到任何回聲,並且給了我一個聲明
未定義的索引:product_type
因為,我是ajax的新手,而jquery是我缺少的東西?如果是,那么我應該怎么做才能使這項工作呢?
謝謝!
注意:它們都在同一目錄中。
;
在數據對象的末尾。 刪除並嘗試。 $_POST['product_type']
將可用。 當刷新頁面時,您不會向testmysql.php頁面發送任何發布請求。 首先,從此語句中刪除分號( ;
),
product_type:"cake";
^
否則會給你語法錯誤 。 現在談到您的問題。
當我單擊按鈕后刷新另一頁時,我看不到任何回聲,它給了我通知,指出未定義的索引:product_type
這是因為當你刷新頁面testmysql.php,在$_POST
數組是空的,就沒有命名的指數product_type
在$_POST
數組。 您可以使用var_dump($_POST);
進行驗證var_dump($_POST);
。
在testmysql.php頁面上,您可以檢查是否設置了$_POST['product_type']
如下所示:
<?php
session_start();
if(isset($_POST['product_type'])){
$_SESSION['type']=$_POST['product_type'];
echo $_SESSION['type'];
}
?>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.