我想使用mysql
在php
中将一些波斯语单词作为prepared statments
数据插入。
这是我的php
代码:
$mysqliObj = new mysqli(HOST, USER_NAME, PASSWORD, DB_NAME);
mysqli_query($connection, "SET NAMES utf-8");
$stmt = $mysqliObj->prepare("INSERT INTO slideshow (slide_url, slide_title, slide_comment) VALUES (? , ? , ?)");
$stmt->bind_param('sss', $val1, $val2, $val3);
$val1 = $slidePathName;
$val2 = $_POST['title'];
$val3 = $_POST['comment'];
$result = mysqli_stmt_execute($stmt);
$stmt->close();
插入效果很好,但phpMyAdmin
显示آموزش اندروید پایه
搜索后我找到了这一行:
mysqli_query($connection, "SET NAMES utf-8");
并像这样设置php
标题:
<?php header('Content-Type: text/html; charset=utf-8'); ?>
并在html中:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
但编码仍有问题。 任何想法都会有帮助。 感谢
答案 0 :(得分:1)
在您的查询中使用此选项。
$mysqliObj->set_charset("utf8");
答案 1 :(得分:0)
charset在MySQL中称为utf8
,而不是utf-8
。最好是,如果您的版本足够新,请使用utf8mb4
获得完整的UTF-8兼容性。同样最好使用mysqli_set_charset
函数,而不是SET NAMES
查询。