Php can';t连接到数据库,can';t插入数据库

Php can';t连接到数据库,can';t插入数据库,php,mysql,Php,Mysql,我有一个问题,以插入电子邮件,密码和名称到mySQL数据库。 我准备了一个单独的类来连接我的数据库。但是,当我把我的名字、电子邮件和密码放在我的表单中(这是在另一个php文件中)时,它们在我的数据库中就什么都没有了。 在这里你可以找到我的代码。我已经在我的数据库中尝试了insert语句,并且成功了 <?php include_once("classes/User.class.php"); include_once("Tweet.php"); class Db { private $m

我有一个问题,以插入电子邮件,密码和名称到mySQL数据库。 我准备了一个单独的类来连接我的数据库。但是,当我把我的名字、电子邮件和密码放在我的表单中(这是在另一个php文件中)时,它们在我的数据库中就什么都没有了。 在这里你可以找到我的代码。我已经在我的数据库中尝试了insert语句,并且成功了

<?php
include_once("classes/User.class.php");
include_once("Tweet.php");

class Db
{
  private $m_sHost="localhost";
  private $m_sUser="root";
  private $m_sPassword="";
  private $m_sDatabase="phples";
  public $conn;

  public function __construct() {
    $this->conn=new mysqli($this->m_sHost,$this->m_sUser,$this->m_sPassword,$this->m_sDatabase);
    if(isset($m_bVerzend)) {
      if(!$conn->connect_errno) {
        $sql = "INSERT INTO 'tbltweet' ('Name', 'Email', 'Password') VALUES ('$m_sName', '$m_sEmail', '$m_sPassword');";
        $conn->query($sql);
      }
    }
  }
}
?>

在构造函数中,您使用了许多未在函数范围内设置的变量:

    if(isset($m_bVerzend)){
    if(!$conn->connect_errno)
    {
        $sql = "INSERT INTO 'tbltweet' ('Name', 'Email', 'Password') VALUES ('$m_sName', '$m_sEmail', '$m_sPassword');";
        $conn->query($sql);}
    }
$m_bVerzend
$m_sName
等所有变量都是未定义的

中提供了有关变量范围的更多信息


顺便说一句,您还应该使用带有绑定变量的预处理语句,而不是将变量转储到sql语句中,以防止sql注入问题。

函数中不存在变量$m_bVerzend、$m_sName、$m_sEmail和$m_sPassword。作为标准,PHP的变量被视为局部范围,除非另有规定


我会将这些值作为构造函数的参数发送,或者只是使用构造函数实例化连接,然后使用不同的过程来接收参数、准备SQL语句并执行查询。

是否收到任何错误消息?如果是这样,请编辑您的文章,将其包括在内。谢谢。您必须转义数据库查询中插入的变量!!11