在這裏與位置直接來一個小問題。 得到一個頁面,用戶需要有正確的「代碼」來訪問該頁面,這些鏈接被URLs共享,如http://www.domain.com/index.php?c=65487549 如果用戶來到這個頁面沒有?c =或只是純文件名index.php 他們應該被送到另一個地方。
是我迄今爲止嘗試:
if (!isset($_GET['c']) == "") {
header ('Location: http://www.domain.com/another.php');
exit();
} else {
$result2 = $link->query('SELECT code FROM Codes WHERE code="'. (isset($_GET['c'])).'"');
$CodeisValid = mysqli_num_rows($result2);
if ($CodeisValid) {
return true;
} else {
header ('Location: http://www.domain.com/another.php');
exit();
}
}
如果用戶從數據庫正確的代碼,用戶會看到頁面。
任何線索?
感謝=)
'如果(!isset($ _ GET [ 'C'])== 「」)'這是一個假的正;你需要將這些分成兩個單獨的條件。你也開放給SQL注入。 –
@ Fred-ii-好的,謝謝。我打算在上線之前得到sql注入,但是感謝你讓我知道:-) – KommerSnart
請閱讀並理解'isset()'的作用及其工作方式:http://php.net/manual/en/function .isset.php –