空白页将HTML表单与php连接到mysql数据库

空白页将HTML表单与php连接到mysql数据库,php,html,mysql,database-connection,Php,Html,Mysql,Database Connection,我按照本教程创建了从注册表到数据库的连接。php代码如下所示: <?php $con = mysqli_connect('localhost','root','root'); if(!$con) { echo 'Not Connected To Server'; } if(!mysqli_select_db($con,'register')) { echo 'Database Not Selected' } $Name = $_POST[

我按照本教程创建了从注册表到数据库的连接。php代码如下所示:

<?php

$con = mysqli_connect('localhost','root','root');

  if(!$con)
  {
    echo 'Not Connected To Server';
  }

  if(!mysqli_select_db($con,'register'))
  {
    echo 'Database Not Selected'
  }

  $Name = $_POST['username'];
  $Email = $_POST['email'];

  $sql = "INSERT INTO users (Name, Email) VALUES ('$name','$email')";

  if(!mysqli_query($con,$sql))
  {
    echo 'Not Inserted';
  }
  else {
    echo 'inserted';
  }

  header("refresh:2; url=index.htm");

?>

mysqli\u connect
可以接受4个输入:主机、用户名、密码、数据库,或者您仍然可以使用
mysqli\u select\u db
。最好使用mysql准备的语句来停止SQL注入。像这样:

<?php

$con = mysqli_connect('localhost','root','root', 'database here');

  if(!$con)
  {
    echo 'Not Connected To Server';
  }

  $Name = $_POST['username'];
  $Email = $_POST['email'];

  $sql = "INSERT INTO users (Name, Email) VALUES (?, ?)";

  mysqli_stmt_bind_param($sql, "ss", $Name, $Email); //Bind the name & email vars to the mysql statement
  $query = mysqli_stmt_execute($sql); //Execute the statement
  mysqli_stmt_close($sql); //Close the mysql statement
  mysqli_close($con); //Close the database connection

  if(!$query)
  {
    echo 'Not Inserted';
  }
  else {
    echo 'inserted';
  }

  header("refresh:2; url=index.htm"); //Remove this if you use the jQuery

?>

mysqli\u connect
可以接受4个输入:主机、用户名、密码、数据库,或者您仍然可以使用
mysqli\u select\u db
。最好使用mysql准备的语句来停止SQL注入。像这样:

<?php

$con = mysqli_connect('localhost','root','root', 'database here');

  if(!$con)
  {
    echo 'Not Connected To Server';
  }

  $Name = $_POST['username'];
  $Email = $_POST['email'];

  $sql = "INSERT INTO users (Name, Email) VALUES (?, ?)";

  mysqli_stmt_bind_param($sql, "ss", $Name, $Email); //Bind the name & email vars to the mysql statement
  $query = mysqli_stmt_execute($sql); //Execute the statement
  mysqli_stmt_close($sql); //Close the mysql statement
  mysqli_close($con); //Close the database connection

  if(!$query)
  {
    echo 'Not Inserted';
  }
  else {
    echo 'inserted';
  }

  header("refresh:2; url=index.htm"); //Remove this if you use the jQuery

?>

您是否已打开错误报告功能?那是个很好的开始,你很容易受到伤害。如果你得到一个空白页面,那么你的代码不知怎么会崩溃/失败,并且你已经关闭了所有的调试选项。你是否也意识到PHP变量是区分大小写的,所以你要设置
$Name
,然后试着插入
$Name
@Elina探索它能提供什么,它们是一个相当可靠的基本标准。我个人已经多年没有在本地安装PHP了,因为我习惯于在实时服务器环境中工作,但是您可以在运行PHP的服务器上获得一些Web空间,或者在Google上搜索
XAMPP PHP本地机器安装
,但我相信,这将涉及到在windows/mac文件中进行一些浏览。不错,不过有点小意思。另外,您是否了解PHP的实际范围?它与HTML和Javascript等有什么不同?将以下内容添加到阅读列表中以了解它:)您是否启用了错误报告功能?那是个很好的开始,你很容易受到伤害。如果你得到一个空白页面,那么你的代码不知怎么会崩溃/失败,并且你已经关闭了所有的调试选项。你是否也意识到PHP变量是区分大小写的,所以你要设置
$Name
,然后试着插入
$Name
@Elina探索它能提供什么,它们是一个相当可靠的基本标准。我个人已经多年没有在本地安装PHP了,因为我习惯于在实时服务器环境中工作,但是您可以在运行PHP的服务器上获得一些Web空间,或者在Google上搜索
XAMPP PHP本地机器安装
,但我相信,这将涉及到在windows/mac文件中进行一些浏览。不错,不过有点小意思。另外,您是否了解PHP的实际范围?它与HTML和Javascript等有什么不同?将这些内容添加到阅读列表中以理解它:)删除select_db calll,因为它现在在连接中完成,并且检查两个输入变量
$Name
$Name
的大小写,对于电子邮件,我想指出第四个参数,数据库,是可选的,他正在使用
mysqli\u select\u db
选择数据库。让我们不要混淆OP,因为从技术上讲,它最多可以占用6个输入。。最后2个是非常真实的情况,但是,这会使它更容易组合。是的,但是我说,不要说<代码> MySqLySnand需要4个输入。这暗示了OP是错误的,当他所做的一切都是使用<代码> MySqLySelpTydB/<代码>而不是放置一个DB PARAM时,我从代码中添加了缺少的元素,但是现在它显示了代码而不是空白页,并且仍然。不向数据库中插入任何数据删除select_db calll,因为现在不需要它,它已在连接中完成,还要检查两个输入变量
$Name
$Name
的大小写,对于电子邮件也是如此,我想指出第四个参数,数据库,是可选的,他正在使用
mysqli\u select\u db
选择数据库。让我们不要混淆OP,因为从技术上讲,它最多可以占用6个输入。。最后2个是非常真实的情况,但是,这会使它更容易组合。是的,但是我说,不要说<代码> MySqLySnand需要4个输入。这暗示了OP是错误的,当他所做的一切都是使用<代码> MySqLySelpTydB/<代码>而不是放置一个DB PARAM时,我从代码中添加了缺少的元素,但是现在它显示了代码而不是空白页,并且仍然。不向数据库中插入任何数据
$(document).ready(function() {
    $(document).on('submit', '#put button name here', function() {
        var name = $('#input name').val();
        var email = $('#input name').val();

        $.ajax({
            type: 'post',
            url: 'scriptname.php',
            data: {
                name:username,
                email:email,
            },
             success: function(res) {
                 //do whatever here after form success
             }
        });
        return false;
      });
    });