在搜索表中显示结果(PHP)

时间:2015-10-04 10:31:40

标签: php search-form

之前可能已经提出这个问题,请随时链接我或其他什么,我无法找到我之后的确切内容。

非常简单,我需要显示搜索表单的结果。那部分很容易,我可以让它工作。我遇到的问题是,当没有结果与用户搜索的内容相符时。

我非常肯定我只需要使用IF语句,但我对PHP不太熟悉,也无法弄清楚如何正确显示代码。

这是我到目前为止所做的:

$query = "SELECT * FROM search WHERE isbn='$isbn' OR bookname='$bookname' OR author='$author' OR category='$category'";

if (!$query)
{
    echo "No results found in the database. Please go back and search again.";
}

我的问题是:如何找到“未找到结果...'当用户搜索不匹配数据库中的任何内容时显示的消息?

注意 - 在尝试理解PHP和SQL中的某些术语时,我很快就感到非常困惑,所以请尝试解释您的答案,就像您对绝对的初学者一样。

非常感谢提前。

2 个答案:

答案 0 :(得分:1)

如果在数据库表中找不到任何行,则要显示“找不到结果”-message。

为此,您可以使用以下PHP和SQL代码:

$sql = "SELECT * FROM search WHERE isbn='$isbn' OR bookname='$bookname' OR author='$author' OR category='$category'";
$query = $db->prepare($sql);
$query->execute();
$rows = $query->fetch(PDO::FETCH_NUM);
if($rows[0]) { 
    // Row exists
} else {
    echo "No results found in the database. Please go back and search again.";
}

请注意,上述答案容易受到SQL注入攻击。 为了防止SQL注入攻击,建议您准备并绑定所有用户提交的数据,这是一个更好的示例,说明如何防止SQL注入攻击:(完整示例,包括数据库连接)

$db = new PDO($dsn);
$db->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);
$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

$query = $db->prepare("SELECT * FROM search WHERE isbn=:isbn OR bookname=:bookname OR author=:author OR category=:category");
$query->execute([ ':isbn'=>$isbn, ':bookname'=>$bookname, ':author'=>$author, ':category'=>$category ]);
$rows = $query->fetch(PDO::FETCH_NUM);
if($rows[0]) { 
    // Row exists
} else {
    echo "No results found in the database. Please go back and search again.";
}

答案 1 :(得分:0)

假设您使用的是Mysqli

rna = AGCACGUAGCUGACUGACUGA

protein_chart = {"UUU":"F", "UUC":"F", "UUA":"L", "UUG":"L",
    "UCU":"S", "UCC":"s", "UCA":"S", "UCG":"S",
    "UAU":"Y", "UAC":"Y", "UAA":"STOP", "UAG":"STOP",
    "UGU":"C", "UGC":"C", "UGA":"STOP", "UGG":"W",
    "CUU":"L", "CUC":"L", "CUA":"L", "CUG":"L",
    "CCU":"P", "CCC":"P", "CCA":"P", "CCG":"P",
    "CAU":"H", "CAC":"H", "CAA":"Q", "CAG":"Q",
    "CGU":"R", "CGC":"R", "CGA":"R", "CGG":"R",
    "AUU":"I", "AUC":"I", "AUA":"I", "AUG":"M",
    "ACU":"T", "ACC":"T", "ACA":"T", "ACG":"T",
    "AAU":"N", "AAC":"N", "AAA":"K", "AAG":"K",
    "AGU":"S", "AGC":"S", "AGA":"R", "AGG":"R",
    "GUU":"V", "GUC":"V", "GUA":"V", "GUG":"V",
    "GCU":"A", "GCC":"A", "GCA":"A", "GCG":"A",
    "GAU":"D", "GAC":"D", "GAA":"E", "GAG":"E",
    "GGU":"G", "GGC":"G", "GGA":"G", "GGG":"G",}