从php向表中插入行时如何修复我的MySQLi数据库
Posted
技术标签:
【中文标题】从php向表中插入行时如何修复我的MySQLi数据库【英文标题】:How to fix my MySQLi database when inserting rows to a table from php 【发布时间】:2019-06-26 22:54:12 【问题描述】:我正在设置一个新的 Web 应用程序,并且我想找到一种方法以希腊语从 php 中插入一行
我通过 PHP 与 mysqli 建立连接,如下所示:
$con = mysqli_connect("localhost", "root", "", "Mydb");
if (!$con)
echo "Error: Unable to connect to MySQL.";
exit;
if($con) echo "connected with db <br/>";
下一步是在表格中输入一些值,如下所示:
if(isset($_POST['ok']))
mysqli_query($con,"INSERT INTO products (product_name,product_delivery) VALUES ('$product_name','$delivey')");
如果我的值名称是英文的,它就可以完美地工作。但是,如果我尝试用希腊语插入一个值,那么与该记录对应的数据库表的行会显示符号
Sample picture of the error
【问题讨论】:
你的 php 和 html 文件是 utf-8 编码的吗? 【参考方案1】:有一种方法可以将 MySQL 的其他语言字符集设置为 shown here。希望能解决问题。
【讨论】:
【参考方案2】:尝试以下方法:
连接到 mysql 后,执行以下查询以确保您使用的是 UTF8:
mysqli_query("SET NAMES 'utf8'");
mysqli_query("SET CHARACTER SET 'utf8'");
如果这没有帮助,请尝试不同的编码,例如 ISO-8859-1
【讨论】:
以上是关于从php向表中插入行时如何修复我的MySQLi数据库的主要内容,如果未能解决你的问题,请参考以下文章
如何在遍历使用 mysqli_use_result 返回的行时执行 mysqli 查询? (PHP)