【发布时间】:2017-02-01 10:58:03
【问题描述】:
如果 $_GET 变量不打印错误,如何检查它是否存在于数据库中。 我正在使用此代码:
$connection = mysqli_connect("localhost" , "root" , "" , "test");
$query = "SELECT site_title FROM websites";
$select_all_sites = mysqli_query($connection,$query);
$row_count = mysqli_num_rows($select_all_sites);
for ($i=0; $i < $row_count; $i++){
$row = mysqli_fetch_assoc($select_all_sites);
if($_GET['website'] == $row['site_title']){
echo 'Success';
}else{
echo 'error';
}
}
它打印出太多错误或(else 条件始终为真。)帮帮我。
【问题讨论】:
-
另外,我建议改用 PDO,它更易读也更容易处理
-
与 Python 不同,PHP 中没有 for/else 循环之类的东西。您需要在遍历它们之前检查您拥有的行数,如果没有,则会出错。
-
打印
$_GET['website']变量,看看它的值是多少。另外$row_count值可能有太多行,如果条件只有 1 为真