php插入mysql數據問題(php7連接mysql資料庫操作)

本文目錄一覽:

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數據問題

這個報錯的含義是輸入的長度和Mysql設置的欄位長度不符,如果直接執行能成功那可以看看是不是編碼的問題.

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),所以這時候我們要把表刪除,然後重建就可以了

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/305271.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2025-01-01 11:07
下一篇 2025-01-01 11:07

相關推薦

  • Python官網中文版:解決你的編程問題

    Python是一種高級編程語言,它可以用於Web開發、科學計算、人工智慧等領域。Python官網中文版提供了全面的資源和教程,可以幫助你入門學習和進一步提高編程技能。 一、Pyth…

    編程 2025-04-29
  • Python讀取CSV數據畫散點圖

    本文將從以下方面詳細闡述Python讀取CSV文件並畫出散點圖的方法: 一、CSV文件介紹 CSV(Comma-Separated Values)即逗號分隔值,是一種存儲表格數據的…

    編程 2025-04-29
  • 如何解決WPS保存提示會導致宏不可用的問題

    如果您使用過WPS,可能會碰到在保存的時候提示「文件中含有宏,保存將導致宏不可用」的問題。這個問題是因為WPS在默認情況下不允許保存帶有宏的文件,為了解決這個問題,本篇文章將從多個…

    編程 2025-04-29
  • Python棧操作用法介紹

    如果你是一位Python開發工程師,那麼你必須掌握Python中的棧操作。在Python中,棧是一個容器,提供後進先出(LIFO)的原則。這篇文章將通過多個方面詳細地闡述Pytho…

    編程 2025-04-29
  • Python 常用資料庫有哪些?

    在Python編程中,資料庫是不可或缺的一部分。隨著互聯網應用的不斷擴大,處理海量數據已成為一種趨勢。Python有許多成熟的資料庫管理系統,接下來我們將從多個方面介紹Python…

    編程 2025-04-29
  • Python中讀入csv文件數據的方法用法介紹

    csv是一種常見的數據格式,通常用於存儲小型數據集。Python作為一種廣泛流行的編程語言,內置了許多操作csv文件的庫。本文將從多個方面詳細介紹Python讀入csv文件的方法。…

    編程 2025-04-29
  • 如何用Python統計列表中各數據的方差和標準差

    本文將從多個方面闡述如何使用Python統計列表中各數據的方差和標準差, 並給出詳細的代碼示例。 一、什麼是方差和標準差 方差是衡量數據變異程度的統計指標,它是每個數據值和該數據值…

    編程 2025-04-29
  • openeuler安裝資料庫方案

    本文將介紹在openeuler操作系統中安裝資料庫的方案,並提供代碼示例。 一、安裝MariaDB 下面介紹如何在openeuler中安裝MariaDB。 1、更新軟體源 sudo…

    編程 2025-04-29
  • Python多線程讀取數據

    本文將詳細介紹多線程讀取數據在Python中的實現方法以及相關知識點。 一、線程和多線程 線程是操作系統調度的最小單位。單線程程序只有一個線程,按照程序從上到下的順序逐行執行。而多…

    編程 2025-04-29
  • Python爬取公交數據

    本文將從以下幾個方面詳細闡述python爬取公交數據的方法: 一、準備工作 1、安裝相關庫 import requests from bs4 import BeautifulSou…

    編程 2025-04-29

發表回復

登錄後才能評論