各位大佬,小弟新學(xué)php,如圖所示,同樣的變量$name ,用echo輸出則沒(méi)有值,而下方從數(shù)據(jù)庫(kù)可以查到輸入的值,請(qǐng)問(wèn)這是為什么?,詳細(xì)問(wèn)題,下附代碼
這是前端頁(yè)面的ajax請(qǐng)求截圖
你post
到后端的時(shí)候是個(gè)空值嗎? 您用echo
為空時(shí)就看不到的,您用var_dump($_POST)
這樣打印一下吧
前面 那個(gè) name 是從表單里取的(即:用戶提交的), 后面那個(gè) name 是來(lái)自數(shù)據(jù)庫(kù)里(而 name 是數(shù)據(jù)庫(kù)的一個(gè)字段)
前面 那個(gè) name 是可以隨便命名的。比如 $a = $_POST['name']; var_dump($a); 如果為空,說(shuō)明用戶在提交表單的時(shí)候,沒(méi)有輸入。
后面 那個(gè) $row['name'] 是不能亂寫的。比如:你寫個(gè) $row['abc'] 就沒(méi)有值了。因?yàn)閿?shù)據(jù)表里沒(méi)有 abc 這個(gè)字段
唔 推薦jquery一個(gè)更簡(jiǎn)便的ajax post方法
$.post(uri,{'argu':data},function(res){
...你的回調(diào)操作...
})
這個(gè)方法更簡(jiǎn)潔哦
你$name的賦值 是把 post的name 賦值過(guò)去的 所以 你想要輸出的name 又?jǐn)?shù)據(jù) 需要先執(zhí)行post (也就是說(shuō)這個(gè)處理頁(yè)面onlinedb.php 直接訪問(wèn)是不會(huì)有輸出的)
然后當(dāng)你執(zhí)行了 ajax操作之后。 post過(guò)去了個(gè)數(shù)組 這時(shí)候 如果你 echo $name;
這行沒(méi)有刪除的話應(yīng)該可以在網(wǎng)絡(luò)狀態(tài)里看到輸出了東西 如圖
你試試
1.JS中查看inputname是否有數(shù)據(jù)哦。
2.瀏覽器debug中看下請(qǐng)求的onlinedb.php中name是否有數(shù)據(jù)
你最上邊打印的是本次傳入的值,
下邊遍歷數(shù)據(jù)庫(kù)打印的,你怎么知道哪條是本次生成的?