无法使用PHP和Mysql连接到数据库
我有一个问题。我需要连接我的数据库并获取表值。但它不是那样发生的。我在下面解释我的代码 index.php:无法使用PHP和Mysql连接到数据库,php,mysql,Php,Mysql,我有一个问题。我需要连接我的数据库并获取表值。但它不是那样发生的。我在下面解释我的代码 index.php: 函数valid() { var obj=document.frmlogin; 如果(obj.txtname.value==“”) { 警报(“请输入用户名”); obj.txtname.focus(); 返回false; } 如果(obj.pwd.value==“”) { 警报(“请输入密码”); obj.pwd.focus(); 返回false; } 其他的 { 返回true; }
函数valid()
{
var obj=document.frmlogin;
如果(obj.txtname.value==“”)
{
警报(“请输入用户名”);
obj.txtname.focus();
返回false;
}
如果(obj.pwd.value==“”)
{
警报(“请输入密码”);
obj.pwd.focus();
返回false;
}
其他的
{
返回true;
}
}
用户名
密码
让我登录
登录
DBConnection.php:
在这里,我尝试回显显示的行数,但它没有显示任何内容。请帮助我解决此问题。作为反射的基础,如果使用OOP,请将其用作OOP,而不是函数库 我为你做了一些事情,你只需要这样使用它:
$db = new DBConnection('host', 'user', 'pass', 'database_name');
$db->connect();
$data = $db->adminLogin('login', 'password');
-
顺便说一句,请查看&&您正在使用mysql\u real\u escape\u string,但您正在连接mysqli,因此请在config.php文件中使用mysqli\u real\u escape\u string,我已声明凭据及其正确性。您的$con在connect函数中可见,因此您的其他函数无法看到它,好吗。@Mihai:您能做到这一点吗?put
ini\u set('display_errors',true);错误报告(E_ALL)
在代码的开头,它将显示所有错误、通知和警告,这样更容易调试脚本。@JayBlanchard看一下他的Q,刚刚给了他一个开始,你的评论应该在他的帖子上。顺便说一句,我完全同意你在这里说的话。你可以发布编辑请求,也可以只发布一个新的答案:)
<?php
class DBConnection{
function __construct() {
}
// destructor
function __destruct() {
// $this->close();
}
public function connect() {
require_once 'dbcon/config.php';
$con = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_DATABASE);
if ($con->connect_error)die("Connection failed: ");
// return database handler
return $con;
}
public function adminLogin($loginid,$password){
$admin = new AdminUser();
if(ctype_alnum($loginid)){
$sqllogin=sprintf("select * from ".PREFIX."admin where username='%s' and trim(password)='%s' and status=1",mysqli_real_escape_string($con,$loginid),mysqli_real_escape_string($con,$password));
$dbsql=mysqli_query($con,$sqllogin);
$Num = mysqli_num_rows($dbsql);
echo $Num;exit;
if($Num >0){
if($row=mysqli_fetch_array($dbsql)){
$admin->adminid =htmlspecialchars($row['id']);
$admin->adminname =htmlspecialchars($row['name']);
$admin->adminloginid =htmlspecialchars($row['username']);
$admin->result=1;
}
}else{
$admin->result=2;
}
}else{
$admin->result=2;
}
return $admin;
}
}
?>
$db = new DBConnection('host', 'user', 'pass', 'database_name');
$db->connect();
$data = $db->adminLogin('login', 'password');
class DBConnection
{
protected $_host = null;
protected $_user = null;
protected $_pass = null;
protected $_database = null;
protected $_con = null;
public function __construct($host, $user, $pass, $db)
{
$this->_host = $host;
$this->_user = $user;
$this->_pass = $pass;
$this->_database = $db;
}
function __destruct()
{
//$this->close();
}
public function connect()
{
$con = new mysqli($this->_host, $this->_user, $this->_pass, $this->_database);
if ($con->connect_error)
{
die("Connection failed: ");
}
$this->_con = $con;
return $con;
}
public function adminLogin($login, $password)
{
$admin = new AdminUser();
if( ctype_alnum($login) )
{
$sqllogin = sprintf(
"select * from ".PREFIX."admin where username='%s' and trim(password)='%s' and status=1",
mysqli_real_escape_string($this->_con, $login),
mysqli_real_escape_string($this->_con, $password));
$dbsql=mysqli_query($this->_con,$sqllogin);
$Num = mysqli_num_rows($dbsql);
echo $Num;exit;
if($Num >0){
if($row=mysqli_fetch_array($dbsql)){
$admin->adminid =htmlspecialchars($row['id']);
$admin->adminname =htmlspecialchars($row['name']);
$admin->adminloginid =htmlspecialchars($row['username']);
$admin->result=1;
}
}else{
$admin->result=2;
}
}else{
$admin->result=2;
}
return $admin;
}
}