简单地将变量 PHP 插入 MySQL

Simple Insert Variable PHP into MySQL

我有一段简单的代码无法运行。

<?php
$mysqli_connection = new MySQLi('localhost', 'root', 'secret', 'edgeserver');
if ($mysqli_connection->connect_error) {
   echo "Not connected, error: " . $mysqli_connection->connect_error;

   $username = 'Eddie';
   $username = mysql_real_escape_string($username);
   $email = 'eddie_the_eagle@hotmail.com';
   $email = mysql_real_escape_string($email);

   $sql = "INSERT INTO  `users` (`username`, `email`) 
           VALUES ( '".$username."', '".$email."')";
   $res = $mysqli_connection->query($sql);
}

?>

当我 运行 代码没有出现错误但用户 table 仍然是空的。

您忘记关闭您的 if 语句,因此您的插入逻辑只会 运行 如果出现连接错误。
将最后一个 } 移动到

之后的新行
$mysqli_connection->connect_error;

You were mixing two API's mysql and mysqli. Stop using deprecated mysql

$username = mysqli_real_escape_string($mysqli_connection,$username);
$email = mysqli_real_escape_string($mysqli_connection,$email);

而且您也忘记关闭您的 if 条件

if ($mysqli_connection->connect_error) {
    echo "Not connected, error: " . $mysqli_connection->connect_error;
}//<------forgot

试试这个

<?php

    $mysqli_connection = new MySQLi('localhost', 'root', 'secret', 'edgeserver');
    if ($mysqli_connection->connect_error)
    {
        echo "Not connected, error: " . $mysqli_connection->connect_error;
    }//Change
    $username = 'Eddie';
    $username = mysqli_real_escape_string($mysqli_connection,$username);//Change
    $email = 'eddie_the_eagle@hotmail.com';
    $email = mysqli_real_escape_string($mysqli_connection,$email); //Change

    $sql = "INSERT INTO  users (username, email) VALUES ( '".$username."', '".$email."')";

    $res = $mysqli_connection->query($sql);
?>

有两个问题:-

  1. 你正在混合 mysql_*mysqli_*

  2. 没有进行错误检查。

这样试试:-

<?php

    $mysqli_connection = new MySQLi('localhost', 'root', 'secret', 'edgeserver');
    if ($mysqli_connection->connect_error)
    {
        echo "Not connected, error: " . $mysqli_connection->connect_error;
    }//Change
    $username = 'Eddie';
    $username = mysqli_real_escape_string($mysqli_connection,$username);//connection link must be provided as a first parameter
    $email = 'eddie_the_eagle@hotmail.com';
    $email = mysqli_real_escape_string($mysqli_connection,$email); //same here

    $sql = "INSERT INTO  users (username, email) VALUES ( '".$username."', '".$email."')";

    $res = $mysqli_connection->query($sql);
?>

注意:-当你要做任何事情时,请自己习惯使用错误报告。谢谢。