我从数据库中获取多行,例如
$query = "SELECT * FROM student_info where district = '".$admdistrict."' AND user_status = 'approved' ORDER BY id DESC";
$result = mysql_query($query) or die(mysql_error());
$delete = mysql_fetch_array($resultt);
$std_delete_array = explode(',', $delete['id']);
数据库中id
的值在不同的行中类似于4,5,6,但它只给出第一个值4.
我拿的另一个数组是,
$query="SELECT * FROM events where id='$district'";
$showdata=mysql_query($query) or die(mysql_error());
$user=mysql_fetch_array($showdata);
$std_fulllist_array = explode(',', $user['std_list']);
数据库中的值是4,5,6,8。但在单一的coloumn,所以它提供适当的输出。现在我想从$std_delete_array
中减去$std_fulllist_array
。
我使用的是代码,
$values = array_diff($std_fulllist_array, $std_delete_array);
仅减去$std_delete
数组的第一个值。
结构是 ID !名称 !区 4个panipat 5 b panipat 6 c panipat
表事件的结构是 ID !区! std_list 1 panipat 4,5,6 2 karnal 4,7,8 3 chandigarh 5,6,7
答案 0 :(得分:0)
您说数据库中id的值类似于不同行中的4,5,6 这意味着你的表看起来像
id district
-- ---------
4 abc
5 def
6 geh
8 ijk
所以你的第一个查询是获取多个记录。
修改强>
所以你的查询将是
$ret_ = array();
$query = "SELECT * FROM student_info where district = '".$admdistrict."' AND user_status = 'approved' ORDER BY id DESC";
$result = mysql_query($query) or die(mysql_error());
if (mysql_num_rows($result) > 0) {
// output data of each row
while($row = mysql_fetch_array($result)) {
echo $row['id'];
$ret_[] = $row;
}
}
print_r($ret_);