本文目錄一覽:
php中sql添加含文字的數據,僅文字亂碼,找不到原因,怎麼辦啊!
方法一:
1. yii默認的編碼方式是utf-8, 若想改變其編碼方式需要在main.php文件中加上’charset’=’GB2312′, 這樣才能改變函數的輸出的編碼方式
2. sql server 2000 的編碼方式默認為本地GB2312編碼方式, 對數據庫進行操作時要注意編碼的方式
3. web頁面的編碼相應的需要變為GB2312
4. 文件保存時需要保存為GB2312編碼,這樣php文件中的中文字符才能正常解析
方法二:
1. 通過iconv函數對數據進行轉碼
iconv(‘GB2312′,’UTF-8’,$data)
php中讓mysql輸入中文,輸出中文
數據庫建表的時候指定了一個字符集的,你查看一下,你是UTF-8呢,還是GB2312,或者GBK,看到了沒有。
記住,上面的字符集是個標準,以後所有地方都要使用這個字符集合,有哪些地方呢:
一、DOS命令行的mysql裡面,首先執行命令set names 字符集,要跟這個一樣。
二、PHP文件也是的,mysql_connect之後,立即就mysql_query(‘set names ~’)
三、PHP文件也要使用這樣的編碼,否則你文件裡面寫的INSERT語句插入的漢字會是亂碼
四、瀏覽器打開你的網頁,也要選擇相同的編碼方式,否則頁面上會是亂碼。
php 中寫 sql語句
php中利用數組用mysql_query批量執行sql語句。
參考示例如下:
思路:這裡採用一個數組.用explode
函數,將$query語句按照”;”炸開,然後循環執行即可:
$query
=
‘delete
from
ecs_goods_attr
where
attr_id=11
and
goods_id=22;
insert
into
ecs_goods_attr
(goods_attr_id,goods_id,attr_id,attr_value,attr_price)values(null,33,138,”膽略”,0);
update
ecs_goods
set
goods_number=10,shop_price=55
where
goods_id=33;’
$query_e
=
explode(‘;’,’$query’);
foreach
($query_e
as
$k
=$v)
{
mysql_query($query_e[$k]);
}
這樣
$query語句就被批量的執行了。
php 如何把一條sql語句寫入數據庫
?php
$dbhost = ‘localhost:3306’; // mysql服務器主機地址
$dbuser = ‘root’; // mysql用戶名
$dbpass = ‘123456’; // mysql用戶名密碼
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn ){
die(‘連接失敗: ‘ . mysqli_error($conn))
;}
echo ‘連接成功br /’; // 設置編碼,防止中文亂碼mysqli_query($conn , “set names utf8”);
$runoob_title = ‘學習 Python’;
$runoob_author = ‘RUNOOB.COM’;
$submission_date = ‘2016-03-06’;
$sql = “INSERT INTO runoob_tbl “.
“(runoob_title,runoob_author, submission_date) “.
“VALUES “.
“(‘$runoob_title’,’$runoob_author’,’$submission_date’)”;
mysqli_select_db( $conn, ‘RUNOOB’ );$retval = mysqli_query( $conn, $sql );
if(! $retval ){
die(‘無法插入數據: ‘ . mysqli_error($conn))
;}
echo “數據插入成功\n”;
mysqli_close($conn);
?
按照步驟開始,多看PHP手冊。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/306571.html