Jayvirsinh Vaghela
Jayvirsinh Vaghela

Reputation: 157

Compare variable of two different array?

Here i want compare two array.

I have two tables one is CATEGORY and second is USER(in which selected multiple category is stored in this format , , , ).

but when the USER want to update their category at that time the earlier selected category should return checked 1 and which is not selected should return checked 0 and here is my code.

case 'cat':
            $sql="SELECT category from nesbaty_user where user_id='".$user_id."'";
            $qry_res=mysqli_query($con,$sql);
            $response1 = array();
            while ($array = mysqli_fetch_array($qry_res)) 
            {
                foreach (explode(',', $array['category']) as $cat) 
                {
                    $response1[]=array('category' => $cat);
                    $response['Selected_category'] = $response1;
                }

            }
            $qry="SELECT cat_id,category,image_url FROM nesbaty_category";

            $qry_res=mysqli_query($con,$qry);
            $jsonData = array();
            while ($array = mysqli_fetch_assoc($qry_res)) 
            {
                $jsonData[] = $array;           
                $response['category'] = $jsonData;
            }
            echo json_encode($response);
            //echo json_encode(array('data1' =>$response1));
            //
            mysqli_close($con);
        break;

and here is my fetched array from the database.

{
"Selected_category": [
    {
        "category": "5"
    },
    {
        "category": "6"
    },
    {
        "category": "9"
    }
],
"category": [
    {
        "cat_id": "1",
        "category": "Drug",
        "image_url": "1.jpg"
    },
    {
        "cat_id": "2",
        "category": "Bars",
        "image_url": "2.jpg"
    },
    {
        "cat_id": "3",
        "category": "Bars",
        "image_url": "2.jpg"
    },
    {
        "cat_id": "4",
        "category": "Hair Saloon",
        "image_url": "2.jpg"
    }
]

}

Upvotes: 1

Views: 55

Answers (1)

Pyton
Pyton

Reputation: 1319

This is for handle this same structure as You provided.

<?php

$response = [];

$sql = "SELECT category from nesbaty_user where user_id='".$user_id."'";
$qry_res = mysqli_query($con, $sql);

$selectedCategories = mysqli_fetch_array($qry_res);
$selectedCategories = explode(',', $selectedCategories['category']);

$qry = "SELECT cat_id,category,image_url FROM nesbaty_category";
$qry_res = mysqli_query($con, $qry);

while ($categories = mysqli_fetch_assoc($qry_res)) {
    $categories['checked'] = (int)\in_array($categories['cat_id'], $selectedCategories);
    $response[] = $categories;
}
echo json_encode($response);

mysqli_close($con);

If any error writes a comment, I'll fix it.

Upvotes: 1

Related Questions