如果有条件,我可以在PHP中执行这些操作吗?

时间:2015-04-28 22:08:54

标签: php html mysql

此代码必须查看sites表并首先检查输入的url是否存在,然后检查url的状态,如果status = block则回显告知站点被阻止,但显然表中的状态是什么一个网址,正在被阻止,不应该



<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "repute system";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection_aborted(oid)
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 

$url = $_POST['url'];
$sql = "SELECT * FROM sites " ;

$result = $conn->query($sql);

if ($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
    	$stat = $row['status'];
    	if($stat = 'block' && $url == $row['URL'])
    	{
       echo "This site is blocked" ;
       die();
      }
    }

    header("Location: $url");
}
?>
&#13;
&#13;
&#13;

我使用&amp;&amp;,||或者,或者在这里的陈述?我也担心标题声明,因为我听说它使用起来很不稳定,为什么会这样?什么是重定向网址的替代品?

2 个答案:

答案 0 :(得分:1)

if($stat = 'block' && $url == $row['URL'])

此部分不会过滤。它应该是这样的。 $stat=='block' 当你这样写时$stat = 'block' 它不仅适用于stat =&#39; block&#39;

答案 1 :(得分:0)

我在评论中回答:(22:13:54Z

if($stat = 'block'您将$stat指定为block并始终为真。

您需要比较if($stat == 'block' /使用2x等号来检查$stat是否等于block