我有一个表格可以保存产品类别的名称,因为它在西里尔文中我遇到了一些问题。问题是它将我所有的西里尔文转移到一些西伯利亚语。
<?php
$con = mysqli_connect('localhost', 'root', '', 'mydb');
// Check connection
if (!$con) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
mysqli_set_charset($con,"utf8");
$data = json_decode(file_get_contents("php://input"));
$id = '';
if(!empty($data->CategoryId)) {
$id = mysqli_real_escape_string($con, $data->CategoryId);
}
$name = mysqli_real_escape_string($con, $data->CategoryName);
$link = str_replace(" ", "-", $name);
$link_lower = strtolower($link);
if ($id != '') {
$sql = "UPDATE `categories` SET CategoryName='$name', CategoryLink='$link_lower' WHERE `CategoryId`='$id'";
if ($con->query($sql) === TRUE) {
print 'success';
} else {
print 'error';
}
} else {
$sql = "INSERT INTO `categories` (`CategoryName`, `CategoryLink`) VALUES ('$name', '$link_lower')";
if ($con->query($sql) === TRUE) {
print 'success';
} else {
print 'error';
}
}
&GT;
我已将整理设置为我的整个数据库及其表格为utf8_unicode_ci。
如果我在var_dump($name)
查询之前设置了INSERT INTO
,则会返回我在该字段中输入的内容。但是,当我设置var_dump($sql)
时,$name
和$link_lower
都处于某种状态
'INSERT INTO `categories` (`CategoryName`, `CategoryLink`) VALUES ('Ðобилни ÑÑÑÑойÑÑва', 'ðð¾ð±ð¸ð»ð½ð¸-ññññð¾ð¹ññð²ð°')'
像这样。我想指出的一点是,我在开发这个小项目时使用AngularJs并不确定它是否重要。