我正在尝试向mysql发送查询以将一些值插入表中,这不是我第一次做这些事情,这就是让我变得疯狂的原因! 当我打印查询时,它看起来像这样:
INSERT INTO hc_family_receive_relief (hc_family_id,hc_received_kind,hc_received_date,hc_received_month,hc_received_year) 价值观('89',' '','30','5','2014')
这是我第一次面对这个问题,原因是什么?
我甚至尝试将PHP file
保存为UTF-8 , UTF-8 with out BOM
,阿拉伯字符仍未插入表中!
以下是我用来从$ _POST数组创建查询的函数:
function add_family_recieve_relief($array)
{
if(empty($array))
return NULL;
$i = 0;
$titles = array();
$values = array();
$query = "INSERT INTO hc_family_receive_relief ";
foreach($array as $key => $value)
{
if($i == 0)
{
$titles[count($titles)] = "($key,";
$values[count($values)] = "('".$value."',";
}
if($i < count($array) - 1 && $i > 0)
{
$titles[count($titles)] = "$key,";
$values[count($values)] = "'".$value."',";
}
if($i == count($array) - 1)
{
$titles[count($titles)] = $key.") VALUES ";
$values[count($values)] = "'".$value."')";
}
$i++;
}
foreach($titles as $tvalue)
$query .= $tvalue;
foreach($values as $vvalue)
$query .= $vvalue;
echo $query;
$qresult = mysql_query($query);
if(!$qresult)
return False;
else return True;
}
这是重新发送$ _POST并将其传递给函数add_family_recieve_relief
的页面:
<?
require_once('../db.php');
require_once('familyReliefAPI.php');
if($_POST['addfamilyrelief'])
{
if(empty($_POST['hc_family_id']) || !is_numeric($_POST['hc_family_id']))
die('<center><h4><font color="red">خطأ في المعالجة , الرقم المميز للعائلة غير موجود !</font></h4></center>');
$family_id = $_POST['hc_family_id'];
array_pop($_POST);
$addfrr = add_family_recieve_relief($_POST);
if(!$addfrr)
die('<center><h4><font color="red">مشكلة في الاضافة , الرجاء التأكد من المعلومات أو الاتصال</font></h4></center>');
else {
//print_r($_POST);
}
}
?>
我也在连接页面中进行SET NAMES utf-8
查询以修复角色问题,但仍然无法正常工作..
请帮帮我..谢谢
注意: 查询变为true并在表格中插入所有值,除了将其留空的阿拉伯字段!
答案 0 :(得分:0)
检查数据库中存在的表的字符集