搜索表单的条件

时间:2016-04-15 08:45:52

标签: php mysql sql laravel eloquent

我想为会计师创建一个目录,我想创建和高级搜索表单,例如:

如果用户输入: Lara ,并且没有具有此名称的会计师,我想建议他的名字包含的会计师' L' ' A' ' R'?

所以问题是如何使用SQL查询创建它,因为我不知道用户输入的字母数量?

1 个答案:

答案 0 :(得分:1)

如果找不到用户,请使用str_split将字符串分成1个字母的数组,然后遍历数组并使用LIKE'%$ string%'查询它们。

// If user not found
if(!(mysqli_num_rows > 0)) {
    $array = str_split($search);
    // If search is two separated words, to remove space and reorder array, use this line instead:
    // $array = str_split(str_replace(" ", "", $array));

    for($i = 0; $i < count($array); $i++) {
        $char = $array[$i];
        $sql = "SELECT * FROM table WHERE name LIKE '%$char%'";
        $result = mysqli_fetch_array(mysqli_query($con, $sql));
        echo $result['name'];
    }