0
我試圖讓這裏用戶登錄我的登錄腳本ATM我只是檢查,如果用戶名存在,但由於某種原因,其沒有找到任何記錄,即使用戶名是正確的庫MySQLi沒有找到行
<?php if(isset($_POST)){
print_r($_POST);
//Variables from the table
$usernamelogin = $_POST['usernamelogin'];
$passwordlogin = $_POST['passwordlogin'];
//Prevent MySQL Injections
$usernamelogin = stripslashes($usernamelogin);
$passwordlogin = stripslashes($passwordlogin);
$usernamelogin = mysqli_real_escape_string($con, $usernamelogin);
$passwordlogin = mysqli_real_escape_string($con, $passwordlogin);
$loginquery = mysqli_query($con,"SELECT * FROM reg_users WHERE user ='$usernamelogin' AND authorised ='1'") or die("Can not query DB.");
$logincount = mysqli_num_rows($loginquery);
if($logincount == 1){
echo "user exists";
} else {
echo "User doesnt exist";
}
}
?>
我的表被稱爲reg_users,用戶是用戶名進入的列。我在註冊表上做同樣的事情,並且工作
任何想法傢伙?
表
`reg_users` (
`id` int(100) NOT NULL AUTO_INCREMENT,
`firstname` varchar(30) DEFAULT NULL,
`surname` varchar(30) DEFAULT NULL,
`user` varchar(255) DEFAULT NULL,
`password` varchar(512) DEFAULT NULL,
`email` varchar(50) DEFAULT NULL,
`banned` int(1) DEFAULT '0',
`authorised` int(1) DEFAULT '0',
`activationcode` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=18 DEFAULT CHARSET=latin1;
而且sqlfiddle是here
這裏是被稱爲在頁面的標題中的config.php
<?php //Information to connect to your MySQL Server AND DB
$hostdb = "localhost";
$userdb = "test_nathan";
$passworddb = "xxxxx";
$db = "test_nathan";
//Connect to MySQL Server
$con = mysqli_connect($hostdb,$userdb,$passworddb,$db) or die ("could not connect");
session_save_path('../login/sessions');
require_once('functions.php');
?>
你可以把表結構嗎?連接是否打開? –
你的問題是什麼?它是否總是顯示用戶名已被使用,還是從未顯示?或者你的PHP會拋出錯誤? – idmean
爲什麼你不檢查用戶和密碼是否正確,而不是用戶和授權?還有,檢查一下,你沒有在表內重複輸入用戶嗎?還有一件事,我沒有在你的php塊中看到$ con 。 – adi