PHP无法从数据库

时间:2017-02-12 09:28:53

标签: php html mysql database mysqli

我想在密钥上进行即时搜索(google like)Jquery ajax必须从HTML输入字段到PHP的值,并且PHP必须在SQL表格中命名为“title”,用于任何开头或包含书面文字/字母的单词,如果没有找到任何东西,它必须在div中打印出结果。

以下是一个例子:

enter image description here

图片说明:Up是输入字段,下方是打印结果的框,因为我们可以看到它正在工作,但是PHP不希望从SQL获取数据,只打印结果保加利亚语的0值(Nothing Found)。

有我的代码:

<?php
    $hostname = "localhost";
    $username = "shreddin";
    $password = "!utf55jyst";
    $databaseName = "shreddin_nation";
    $connect = new mysqli($hostname, $username, $password, $databaseName);
    $fsearch = "";

    if (!empty($_POST['fsearch'])) {
        $fsearch = $_POST['fsearch'];

        $req = $connect->prepare("SELECT title FROM food_data_bg WHERE title LIKE ?");

        $req->bind_param('s', $fsearch);
        $req->execute();
        if ($req->num_rows == 0) {
            echo 'Не бяха намерени резултати!';
        }
        else {
            while ($row = $req->fetch_array()) {
                ?>
                    <div class = "search-result">
                        <span class = "result-title">
                            <? php
                                echo $row['title'];
                            ?>
                        </span><br>
                    </div>
                <?php
            }
        }
    }
?>

代码工作到else {...}只有这部分不起作用..; / 我尝试在else {...}之后使用echo一些结果,因为我认为这是我的代码的一个问题,但它无论如何都无法工作......有人可以向我解释我的错误在哪里(请用简单的语言)我不擅长用PHP编写代码。

我不会把Jquery和HTML放在这里因为一切正常,post方法都很好,问题在于php。但是当然如果你需要它来帮助我,我会毫无问题地粘贴它。

2 个答案:

答案 0 :(得分:1)

被修改

$value = '%'.$fsearch.'%;
$req->bind_param('s', $value);

它会起作用:)

答案 1 :(得分:0)

<?php
$hostname = "localhost";
$username = "username";
$password = "pass";
$databaseName = "dbName";
$connect = new mysqli($hostname, $username, $password, $databaseName);
$fsearch="";

if(!empty($_POST['fsearch'])) {
$fsearch = $_POST['fsearch'];

$req = $connect->prepare("SELECT title FROM food_data_bg WHERE title LIKE ?");
$value = '%'.$fsearch.'%';
$req->bind_param("s", $value);
$req->execute();
$req->store_result();

if ($req->num_rows == 0){

echo 'Няма резултати';
}
else{
echo 'ДАА';
}
}
   

确定!这是最终的结果,它是在找到结果时打印ДАА和Нямарезултати当没有任何结果修复它1个月的痛苦后lol感谢所有帮助我的人&lt; 3&lt; 3&lt; 3&lt; 3&lt; 3&lt; 3&lt; 3&lt; 3&lt; 3&lt; 3&lt; 3&lt; 3&lt; 3&lt; 3&lt; 3 3 <3