这是我的注册表格,它可以正常工作并将我毫无问题地发送到索引文件,但是当我将其与登录名结合使用时,会出现错误
<?php
session_start();
$username="";
$email="";
$password="";
$errors=array();
$success=array();
try{
$host='localhost';
$user='root';
$password='';
$dbname='login';
//Set dsn
$dsn='mysql:host='.$host.';dbname='.$dbname;
$pdo=new PDO($dsn,$user,$password);
$pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE,PDO::FETCH_OBJ);
}catch(Exception $e){
echo "error".$e->getMessage();
}
if(isset($_POST['register'])){
$email=trim($_POST['email']);
$password=trim($_POST['password']);
$password_2=trim($_POST['password_2']);
if(empty($email)){
array_push($errors,'Email SHOULd be filled ');
}
if(empty($password)){
array_push($errors,'Password should be filled ');
}
if($password !=$password_2){
array_push($errors,"Passwords do not match");
}
if(count($errors)==0){
$password_hash=md5($password);
$insert=$pdo->prepare("INSERT INTO users (email,password) VALUES (:email,:password)");
$insert->bindParam(':email',$email);
$insert->bindParam(':password',$password);
$insert->execute();
$_SESSION['email']=$email;
$_SESSION['success']='You have registered ';
header('Location:index.php');
}
}
这是我的登录表单,不起作用,我的代码存在一些问题。
首先,我不知道我的登录页面的列名称是否应与注册列名称匹配
if(isset($_POST['login'])){
$email=trim($_POST['email']);
$password=trim($_POST['password']);
if(empty($email)){
array_push($errors,'Email should be filled ');
}
if(empty($password)){
array_push($errors,'Password should be filled );
}
if(count($errors)==0){
$select=$con->prepare("SELECT * FROM users WHERE email='$email' and password='$password'");
$select->execute();
$count=$query->fetchColumn();
echo '111';
// if($c11ount=="1"){
// header('Location:index.php');
// }
}
}
这只是注销系统
if(isset($_GET['logout'])){
session_destroy();
header('location:login.php');
}
?>
<link rel="stylesheet" href="inde.css">
enter code here
答案 0 :(得分:0)
我在您的脚本行中发现了一些错误
将$ conn用作数据库连接,并用以下内容替换登录代码:
/usr/local/opt