Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.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
插入php mysql的正确语法是什么。带或不带会话变量_Php_Mysql_Session_Insert - Fatal编程技术网

插入php mysql的正确语法是什么。带或不带会话变量

插入php mysql的正确语法是什么。带或不带会话变量,php,mysql,session,insert,Php,Mysql,Session,Insert,我用单引号和$session变量尝试了很多语法测试,现在我决定将session变量放在正则变量中,以减少语法复杂性 $conn = mysql_connect($servername, $username, $password); // Check connection if (!$conn) { die("Connection failed: " . mysql_error()); } if (!mysq

我用单引号和$session变量尝试了很多语法测试,现在我决定将session变量放在正则变量中,以减少语法复杂性

$conn = mysql_connect($servername, $username, $password);
        // Check connection
        if (!$conn) {
            die("Connection failed: " . mysql_error());
        } 
        if (!mysql_select_db($dbname)) {
            die('Could not select database: ' . mysql_error());
        }


    $this_email = $_SESSION['email'];
    $this_password = $_SESSION['pw'];
    $this_number = $_SESSION['phone'];

    $sql = mysql_query("INSERT INTO user_accounts(Email, Password, Phone#) VALUES ('$this_email','$this_password','$this_number')");
    if (!$sql) {
      echo mysql_error();
    }

    mysql_close($conn);
这是我得到的错误:

您的SQL语法有错误;检查与您的MariaDB服务器版本相对应的手册,以获取第1行“”附近要使用的正确语法


列名可以有
基本拉丁字母、数字0-9、美元、下划线
。所有其他字符都需要使用反勾号

因此,请尝试:

INSERT INTO user_accounts(Email, Password, `Phone#`)

您还应该更新驱动程序并使用准备好的语句。

列名可能有
基本拉丁字母、数字0-9、美元、下划线。所有其他字符都需要使用反勾号

因此,请尝试:

INSERT INTO user_accounts(Email, Password, `Phone#`)
您还应该更新您的驱动程序并使用准备好的语句。

因为
手机#
中有一个特殊字符(
#
),您需要用反勾来写它

此外,我建议您使用PDO或mysqli库以及准备好的语句,因为mysql库已被弃用。

因为
Phone
中有一个特殊字符(
),您需要用反勾来写它


此外,我建议您使用PDO或mysqli库以及prepared语句,因为mysql库已被弃用。

如果可以,最好只使用一个不需要在倒勾中的列名。如果可以,也许最好只使用一个不需要倒勾的列名,因为它不是字母数字
#
实际上意味着一些东西。这不是问题,因为它不是字母数字<代码>#
实际上意味着什么。