php - 不区分大小写但敏感

标签 php mysql search case-sensitive case-insensitive

这是我的数据库:database

这是两行 rows

当我尝试在“banca”行中查找“CEC”时,一切正常(使用 CEC banca 显示我的行)。如果我尝试在“banca”行中查找“cec”或“Cec”或“ceC”,则没有结果,我不知道为什么! 如果我提交确切的“文本”,但我不希望这样,我的搜索就会起作用。

这是 php 代码:

$valueToSearch = $_POST['valueToSearch'];
// search in all table columns
// using concat mysql function
$query = "SELECT * FROM fachitate WHERE CONCAT (ID, data, furnizor, suma, banca, firma, observatii) LIKE '%".$valueToSearch."%'" ;
$search_result = filterTable($query);

// function to connect and execute the query

    function filterTable($query)
    {
        $connect = mysqli_connect("localhost", "root", "MYPASS", "facturi_db");
        $filter_Result = mysqli_query($connect, $query);
        return $filter_Result;
    }


echo "<table>
<tr>
<th>ID</th>
<th>Data</th>
<th>Furnizor</th>
<th>Suma</th>
<th>Banca</th>
<th>Firma</th>
<th>Observatii</th>
</tr>";
while($row = mysqli_fetch_array($search_result))
  {
    echo "<td><font color='#000000'>" . $row['ID'] . "</td>";
    echo "<td><font color='#000000'>" . $row['data'] . "</td>";
    echo "<td><font color='#000000'>" . $row['furnizor'] . "</td>";
    echo "<td><font color='#000000'>" . $row['suma'] . "</td>";
    echo "<td><font color='#000000'>" . $row['banca'] . "</td>";
    echo "<td><font color='#000000'>" . $row['firma'] . "</td>";
    echo "<td><font color='#000000'>" . $row['observatii'] . "</td>";
  
  echo "</tr>";
    }

形式:

    <form action="myfilter.php" method="post">
        <input type="text" name="valueToSearch" placeholder="Adauga nou filtru">
        <input type="submit" name="search" value="Filtreaza"><br><br>
     </form>

请帮忙! 谢谢!

最佳答案

像这样更新您的选择:

$query = "SELECT * FROM fachitate WHERE LOWER(CONCAT(ID, data, furnizor, suma, banca, Firma, observatii)) LIKE '%".strtolower($valueToSearch)."%'";

如果您将搜索键和搜索词转换为小写,则大小写变得不敏感;)

关于php - 不区分大小写但敏感,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40246213/

相关文章:

php - Laravel 检查记录是否存在

php - 将查询循环到单独的表中

nginx - PHP-FPM结束状态如何处理?

php - 如何在 MySQL 搜索结果中突出显示关键字

mysql - 我可以在一个请求中插入最佳记录数或数据大小吗?

mysql - 如何在一个查询中使用带有两个条件的mysql函数 "min()"

php - 在更新表单中预填充选择的输入字段

search - Elasticsearch部分产品类型名称

javascript - 在 ReactJS 中使用搜索框时如何显示来自 API 的信息?

javascript - algolia instantsearch refinementList 项目在搜索其他内容时切换