How can the MySQL function FIND_IN_SET() be utilized to search for values within a string column in a database using PHP?

To search for values within a string column in a database using PHP, you can utilize the MySQL function FIND_IN_SET(). This function allows you to search for a specific value within a comma-separated list of values in a column. You can use this function in your SQL query to filter out rows that contain the value you are searching for.

// Connect to the database
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database";

$conn = new mysqli($servername, $username, $password, $dbname);

// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

// Search for a specific value within a string column
$search_value = "value_to_search";
$sql = "SELECT * FROM table_name WHERE FIND_IN_SET('$search_value', column_name) > 0";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // Output data of each row
    while($row = $result->fetch_assoc()) {
        echo "ID: " . $row["id"]. " - Value: " . $row["column_name"]. "<br>";
    }
} else {
    echo "0 results found";
}

$conn->close();