本文目錄一覽:
php向mysql插入數據出錯
mysql語句在執行insert,update時,對於非數字的值,必須加引號,比如
1update tablename set attrA=’valueA’1update tablename set attrA=valueA;
這樣就會報錯。對於數字的值,可以不加,加上也不會影響插入效果,比如
1update tablename set intAttrA = 1;1update tablename set intAttrA = ‘1’;
這兩種都是可以的。
你這裡報錯的一行代碼,假設輸入的$_POST[‘username’]
=
『a』;$_POST[‘pwd’]
=
『b』;$_POST[‘content’]
=
‘c’;
在處理後,最後執行的是
INSERT
INTO
userinfo
(username,
pwd,
content)
VALUES
(a,
b,
c);
它的錯誤就是上面說的非數字類的值,沒帶引號。
但實際上,正確的語句應該是
INSERT
INTO
userinfo
(username,
pwd,
content)
VALUES
(『a』,
『b』,
『c』);
所以你測試的
$query
=
‘INSERT
INTO
userinfo
(username,
pwd,
content)
VALUES
(“username”,
“pwd”,
“content”)’;
能正確執行。
最後問題的解決方法是:
1234567$query = “INSERT INTO userinfo (username, pwd, content) VALUES (‘”.$_POST[‘username’].”‘, ‘”.$_POST[‘pwd’].”‘, ‘”.$_POST[‘content’].”)”; 另外 為了看起來舒服點,可以這麼寫:$query = sprintf(“INSERT INTO userinfo (username, pwd, content) VALUES (‘%s’, ‘%s’, ‘%s);”,$_POST[‘username’],$_POST[‘pwd’],$_POST[‘content’]); 最後,你這種寫法,有Sql注入的風險,從安全形度來講是不可取的。所以應該這麼寫:$query = sprintf(“INSERT INTO userinfo (username, pwd, content) VALUES (unhex(‘%s’),unhex(‘%s’), unhex(‘%s’));”,bin2hex($_POST[‘username’]),bin2hex($_POST[‘pwd’]),bin2hex($_POST[‘content’]));
用php往mysql裡面添加數據
$conn=mysql_connect(“localhost”,”root”,”5201314″)or die(“連接失敗”); mysql_select_db(“test”,$conn); $sql=”INSERT INTO g (uid, regdate, remark) VALUES (‘小建’, ‘2010-03-29’, ‘鴨子’)”; $result=mysql_query($sql); ? 應該是uid的類型的問題 你把它改一下 具體的你可以加我的QQ:604250149 我會為你解答的
php和mysql怎麼添加數據
首先創建 一個HTML頁面userinfo_add.php,在裡面輸入表單,文本框,輸入需要提交的到資料庫的信息:
賬號 姓名 年齡
頁面運行結果:
創建一個PHP文件(userinfo_insert.php),用來處理頁面請求的,就是具體往資料庫添加數據的代碼:
先獲取頁面數據
//通過post獲取頁面提交數據信息 $userId = $_POST[userId];
$userName = $_POST[userName];
$userAge = $_POST[userAge];
接下來,在連接資料庫 『test』
//地址
$url = “127.0.0.1”;
//賬號
$user = “root”;
//密碼
$password = “root”;
//連接
$con = mysql_connect($url,$user,$password);
//設置編碼機
mysql_query(“set names ‘utf8′”);
//連接資料庫
mysql_select_db(“test”);
編寫SQL,執行SQL添加數據
$sql = “insert into user_info (user_id,user_name,user_age) values(‘$userId’,’$userName’,’$userAge’)”;
if (!mysql_query($sql,$con))
{
die(‘Error: ‘ . mysql_error());
}
echo “添加一條記錄”;
//關閉連接
mysql_close($con)
運行結果前:
運行結果後:
完整代碼:
php網站怎麼添加mysql數據
首先創建
一個HTML頁面userinfo_add.php,在裡面輸入表單,文本框,輸入需要提交的到資料庫的信息:
賬號
姓名
年齡
頁面運行結果:
創建一個PHP文件(userinfo_insert.php),用來處理頁面請求的,就是具體往資料庫添加數據的代碼:
先獲取頁面數據
//通過post獲取頁面提交數據信息
$userId
=
$_POST[userId];
$userName
=
$_POST[userName];
$userAge
=
$_POST[userAge];
接下來,在連接資料庫
『test』
//地址
$url
=
“127.0.0.1”;
//賬號
$user
=
“root”;
//密碼
$password
=
“root”;
//連接
$con
=
mysql_connect($url,$user,$password);
//設置編碼機
mysql_query(“set
names
‘utf8′”);
//連接資料庫
mysql_select_db(“test”);
編寫SQL,執行SQL添加數據
$sql
=
“insert
into
user_info
(user_id,user_name,user_age)
values(‘$userId’,’$userName’,’$userAge’)”;
if
(!mysql_query($sql,$con))
{
die(‘Error:
‘
.
mysql_error());
}
echo
“添加一條記錄”;
//關閉連接
mysql_close($con)
運行結果前:
運行結果後:
完整代碼:
PHP插入數據到mysql
mysql_query(“insert into content (‘name’,’time’,’content’) values(‘$name’,’$dat’ ,’$mycontent’) ” );
$result = mysql_query(“SELECT * FROM content where ‘name’=’$name’ “);
請將這兩行內所有有關 欄位 加的單引號(”)全部換成 符號(“),你這裡是不能加”的,在資料庫中”中永遠被識別為字元串,而不是欄位和表名. 而是字元串值的則必須要加單引號,’name’是錯誤的,’$name’是正確的.(最好這麼寫'{$name}’)
================================================
用下面的替換下那兩行句子吧
mysql_query(“insert into `content` (`name`,`time`,`content`) values (‘{$name}’,'{$dat}’ ,'{$mycontent}’);” );
$result = mysql_query(“SELECT * FROM `content` where `name`='{$name}’ “);
很關鍵的是我想問問你的time欄位是字元串型的嗎? 如果不是,就需要將$dat的引號刪除了.
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/237251.html