如何将数组数据与数据库中的不同行值进行比较

时间:2015-01-22 09:19:19

标签: php mysql arrays

我想将我的数组数据与数据库数据进行比较,实际上我将从服务器获取数组值,我不知道它是否正确所以这就是为什么我想比较这个数组值与我的数据库值如果它是现在与否,但问题是我会得到数组格式的值,如: - “TAG_ID”: [  “1”,  “2”,  “3” ] 我有数据库,其中的值如

  1. 贝蒂
  2. 克里斯蒂
  3. 爱德华

    为此我使用了这段代码 -

    $ array_tag_id =内爆( ' '$ JSON_OBJECT [' TAG_ID']); //检查标签ID是否正确。 $ match_tag_id = mysqli_query($ con,“从Wheel_Tag中选择tag_id,其中 tag_id喜欢$ array_tag_id [0]“);

  4. 我认为将数组数据与数据库行数据进行比较是不正确的。 所以请帮我如何与数据库行值进行比较。

    我可以为数据库表id的值创建一个数组,然后与服务器数组值进行比较。?

    现在我只是尝试这个..但它不起作用..

    $array1 = array();
    $result = mysqli_query($con,"SELECT tag_id FROM Wheel_Tag");
    if (mysqli_num_rows($result) > 0)
    {
    
    while ($row = mysqli_fetch_assoc($result))}
    {$array1 = array_merge($array1, array_map('trim', explode(",", 
    $row['tag_id'])));}
    $match_tag_id=mysqli_query($con,"select tag_id from Wheel_Tag where 
    tag_id like '$array1'");
    if(mysqli_num_rows($match_tag_id) > 0){
           while($row = mysqli_fetch_assoc($match_tag_id)){
               $get_tag_id=$row['tag_id'];}}
    

    但我认为这不正确。

    任何人都帮帮我.. 如何将json转换为php数组????

1 个答案:

答案 0 :(得分:2)

使用IN ()代替LIKE

$json_str = 'JSON CODE';
$json_arr = json_decode($json_str, 1); <<-- flag 1 to output as array
$tag_ids = implode(',', $json_arr['tag_id']);


select tag_id from Wheel_Tag where tag_id IN ($tag_ids)