phpmysql數據插入
⑴ 我想問一下,使用php向mysql插入數據,為什麼報錯插入不了
你的php系統不支持mysqli擴展,可以試一下改用原始的mysql擴展
⑵ PHP+MYSQL如何插入記錄到資料庫
「INSERT INTO」語句的作用是:向一個資料庫的表中插入一條新的記錄。向一個資料庫表中插入數據「INSERT INTO」的作用是:向一個資料庫的表中插入一條新的記錄。語法INSERT INTO table_name VALUES (value1, value2,....) 你可以在指定的列中插入數據,具體如下:INSERT INTO table_name (column1, column2,...) VALUES (value1, value2,....) 注意:SQL語句是「字母大小寫不敏感」的語句(它不區分字母的大小寫),即:「INSERT INTO」和「insert into」是一樣的。在PHP內創建資料庫,我們需要在mysql_query()函數內使用上述語句。這個函數是用來發送MySQL資料庫連接建立的請求和指令的。案例在前一章里,我們建立了一張名為「Person」的表,其中包含三個縱列:"Firstname", "Lastname" 和 "Age"。在下面的案例當中,我們還會用到同一張表,並在其中加入兩條新的記錄:<?php $con = mysql_connect("localhost","peter","abc123");if (!$con){die('Could not connect: ' . mysql_error()); }mysql_select_db("my_db", $con);mysql_query("INSERT INTO person (FirstName, LastName, Age) VALUES ('Peter', 'Griffin', '35')");mysql_query("INSERT INTO person (FirstName, LastName, Age) VALUES ('Glenn', 'Quagmire', '33')");mysql_close($con); >把一張表中的數據插入資料庫中現在,我們將建立一個HTML表單;通過它我們可以向「Person」表中加入新的記錄。下面演示這個HTML表單:<html> <body><form action="insert.php" method="post"> Firstname: <input type="text" name="firstname" /> Lastname: <input type="text" name="lastname" /> Age: <input type="text" name="age" /> <input type="submit" /> </form></body> </html> 在上述案例中,當一個用戶點擊HTML表單中的「提交submit」按鈕後,表單中的數據會發送到「insert.php」。「insert.php」文件與資料庫建立連接,並通過PHP $_POST變數獲取表單中的數據;此時,mysql_query()函數執行「INSERT INTO」語句,這樣,一條新的記錄就被添加到資料庫的表單當中了。下面試「insert.php」頁面的代碼:<?php
⑶ php怎麼向mysql資料庫中插入變數
變數那裡加上花括弧({})即可。
$add = "insert into admin(adminid,adminname,password,rolename) values('{$adminid}','{$adminname}','{$password}','{$rolename}')";
把第一行與第二行改為:
$conn = mysqli_connect('localhost','root','root','news');
mysqli_connect的第四個參數就是庫名。
⑷ php中的值怎麼插入到mysql資料庫中
先要通過form表單將數據提交到php端
連接mysql_connect('localhost','','')
$sql = "insert into table values (".$_POST['value'].")";
插入到資料庫:$res = mysql_query($sql);
⑸ 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
$sql="insert into `news`(`id`,`title`,`dates`,`contents`) values (null,'$title',now(),'$con')";
你的id應該是自增的吧?不要寫成null。。
改成$sql="insert into `news`(`title`,`dates`,`contents`) values ('$title',now(),'$con')";
試試吧。。有問題歡迎繼續問
⑺ php中插入MySQL資料庫的語句怎麼寫
顯示資料庫或表:
showdatabases;//然後可以usedatabase_name;
showtables;
更改表名:
altertabletable_namerenamenew_t;
添加列:
altertabletable_nameaddcolumnc_ncolumnattributes;
刪除列:
altertabletable_namedropcolumnc_n;
創建索引:
altertablec_tableaddindex(c_n1,c_n2);
altertablec_tableadniqueindex_name(c_n);
altertablec_tableaddprimarykey(sid);
刪除索引:
altertablec_tabledropindexc_n1;
更改列信息:
altertablet_tablechangec_1c_1varchar(200);
altertablet_tablemodify1c_1varchar(200);
insert插入語句:
insertintotable_name(c_1,c_2)
values('x1',1);
update語句:
updatetable_namesetc_1=1wherec_2=3;
刪除資料庫或者表:
droptabletable_name;
dropdatabasedatabase_name;//使用mysql_drop_db()可以刪除的.
⑻ php插入數據到MYSQL中出錯,怎麼正確插入
① 首先把MySQL的服務停掉 在運行窗口輸入:net stop mysql
② 把伺服器和客戶端的字元集改成自己想用的字元集:GB2312或是utf8等……
具體操作為:打開mysql安裝目錄下的myini.tet;
找到default-character-set,將其改為自己想用的字元集:GB2312或是utf8等……,要注意的是這里有兩個default-character-set,用ctrl+f定位在文件最前面輸入default就會找到,都要改過來;
③ 重啟MySQL伺服器,在運行窗口輸入:net start mysql
④ 最重要的是一點是,到這里我們已經能夠解決亂碼問題了,可問題是我們依然還會出現亂碼問題,這是因為我們現在的表被創建的時候用的是默認的字元集(latin1),所以這時候我們要把表刪除,然後重建就可以了
⑼ 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資料庫 如何有條件批量插入多條數據
數據整理好後,批量插入可用addAll方法(僅針對Mysql資料庫):
$User->addAll($data);