我在数据库中有一个朋友的联系人列表,我想做的是检索用户联系人,查看其他用户 ID 是否在其中,如果没有,则添加它,然后将其放回数据库中。
但是我似乎继续将相同的联系人添加到数组中,即使它已经存在并且输出存储在我的数据库中,就像这样
a:2:{i:0;a:1:{i:0;i:1070;}i:1;i:1070;}
这是 in_array 在第一次检查时未评估为真的产物。每次运行该功能时,都会添加越来越多的“层”。
提前致谢
这是我的代码
function addfarmertohunter($hunterid,$farmerid){
$select="SELECT contacts from users where id=$hunterid";
$result=mysql_query($select)or die(' add farmer error'. mysql_error());
if (mysql_num_rows($result)==1){
$row=mysql_fetch_array($result);
$contacts=$row[0];
if($contacts==null||$contacts=="N;"||$contacts==""){
$temp=array();
array_push($temp, $farmerid);
}else{
$temp=array(unserialize($contacts));
if(in_array((int)$farmerid, $temp)==FALSE){array_push($temp, $farmerid);}
}
$strcontacts=serialize($temp);
$ins="UPDATE users set contacts='$strcontacts' where id=$hunterid";
mysql_query($ins) or die('add farmer e'.mysql_error());
}
}