Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
设置MySQL登录时出现PHP错误_Php_Mysql_Mysqli - Fatal编程技术网

设置MySQL登录时出现PHP错误

设置MySQL登录时出现PHP错误,php,mysql,mysqli,Php,Mysql,Mysqli,这是我的错误: 分析错误:语法错误,意外的“连接”(T_字符串),应为“,”或“;”在第13行的/home/ubuntu/workspace/login.php中 守则: <?php // establishing the MySQLi connection $con = mysqli_connect(“localhost”,”root”,””,”members”); if (mysqli_connect_errno()) { echo “MySQLi Connection w

这是我的错误:

分析错误:语法错误,意外的“连接”(T_字符串),应为“,”或“;”在第13行的/home/ubuntu/workspace/login.php中

守则:

<?php

// establishing the MySQLi connection
$con = mysqli_connect(“localhost”,”root”,””,”members”);

if (mysqli_connect_errno()) {
    echo “MySQLi Connection was not established:” .mysqli_connect_error();
}

// checking the user
if(isset($_POST[‘login’])) {
    $email = mysqli_real_escape_string($con,$_POST[’email’]);
    $pass = mysqli_real_escape_string($con,$_POST[‘pass’]);

    $sel_user = "select * from members where user_email='$email AND user_password='$pass'";

    $run_user = mysqli_query($con, $sel_user);
    $check_user = mysqli_num_rows($run_user);

    if($check_user > 0) {
        $_SESSION[‘user_email’] = $email;
        echo “<script>window.open(‘home.php’,’_self’)</script>”;
    } else {
        echo “<script>alert(‘Email or password is not correct, try again!’)</script>”;
    }
}

?>

看起来您使用的是斜引号(
),而不是直引号(
)。将这些内容修改为PHP要求的内容即可。这通常是由于使用了不合适的编辑器,例如文字处理软件包;例如,Microsoft word使用名为“智能引号”的功能将直引号替换为斜引号

请注意,双引号和单引号在PHP中的行为稍有不同。使用单引号时,区别在于它们不理解控制字符(例如
\n
),也不插入内联变量


顺便提一下,这里有两个问题:

$sel_user = "select * from members where user_email='$email  AND user_password='$pass'";

您的电子邮件字符串两边都没有引号,因此这将导致SQL错误。此外,您正在以明文形式存储密码-密码应该经过哈希和盐渍处理。有关如何以安全方式进行此操作,请参阅PHP手册。

单引号可能存在类似问题?“->”Good spot@MrD!我将更新帖子。