先上代碼:
html:
添加使用者
adduser.php:
require_once "connectDB.php";
print_r( $_POST );
//var_dump($_POST;
$fname = $_POST[ 'fname' ];
$age = $_POST[ 'age' ];
$conn = connectDB();
mysqli_query( $conn, "INSERT INTO user(name,age) VALUES ('$fname','$age')" );
?>
輸出:
Array ( )
Notice: Undefined index: fname in C:\xampp\htdocs\DataBase\adduser.php on line 21
Notice: Undefined index: age in C:\xampp\htdocs\DataBase\adduser.php on line 22
查看資料庫裡面有一條空資料插入。但是把post換成get以後就能可以插入正確的資料。
回複討論(解決方案)
光這兩個檔案 是沒有問題的
請貼出真實代碼!
出錯行都是 21、22行了,你 adduser.php 才給了幾行
請貼出真實代碼!
出錯行都是 21、22行了,你 adduser.php 才給了幾行
都是注釋了的就沒貼出來
真實代碼:
請貼出真實代碼!
出錯行都是 21、22行了,你 adduser.php 才給了幾行
都是注釋了的就沒貼出來
真實代碼:
/**
* Created by PhpStorm.
* User: 541464750
* Date: 2016/1/13
* Time:$$ 0:49
*/
//if(!isset($_GET['fname']))
//{
// die("no name");
//}
//if(!isset($_GET['age']))
//{
// die("no age");
//}
require_once "connectDB.php";
print_r( $_GET );
//var_dump($_GET;
$fname = $_GET[ 'fname' ];
$age = $_GET[ 'age' ];
$conn = connectDB();
mysqli_query( $conn, "INSERT INTO user(name,age) VALUES ('$fname','$age')" );
//header( "Location:alluser.php" );
?>
這裡只是把POST改成了GET 其他的還是和之前一樣的。
光這兩個檔案 是沒有問題的
在其他地方也是,GET能用,POST用不了,是因為系統或者設定原因嗎?
光這兩個檔案 是沒有問題的
在其他地方也是,GET能用,POST用不了,是因為系統或者設定原因嗎?
你真實代碼用的是$_GET ? 然後print出空值 ,是正常現象。。
跟你主樓貼的代碼以及錯誤又對不上
你越貼代碼越沒描述清楚問題了。。
光這兩個檔案 是沒有問題的
在其他地方也是,GET能用,POST用不了,是因為系統或者設定原因嗎?
你真實代碼用的是$_GET ? 然後print出空值 ,是正常現象。。
跟你主樓貼的代碼以及錯誤又對不上
你越貼代碼越沒描述清楚問題了。。
就是看我主樓代碼就可以了,我只是把一些注釋給刪除掉發上來了而已。
我用GET的時候print出來的不是空值,但是POST就是空值
用瀏覽器的開發人員模式調試,先看看要求標頭裡是不是真的有資料Post過來。
用瀏覽器的開發人員模式調試,先看看要求標頭裡是不是真的有資料Post過來。
不知道怎麼看這個,但是我用print列印出來POST顯示的空值,你的意思是不是讓我看到底是資料沒傳過來還是資料沒接受到麼。
奇怪的很,攔截post啦?
原因找到了。。。是因為我是用phpstorm啟動的網頁,不是用的apache,改成apache的連接埠開啟網頁就好了。