【问题标题】:Can't connect PHP to XAMPP Database for sending data无法将 PHP 连接到 XAMPP 数据库以发送数据
【发布时间】:2018-07-04 18:28:49
【问题描述】:

您好,我已经在 myPHPadmin 中创建了一个数据库,并且正在尝试通过 HTML 表单将注册数据发送到那里。 我已经为服务器创建了连接文件,并对其进行了测试。它说我已连接到数据库,但是当我使用表单发送数据时它不起作用。

这是连接文件和索引一(我连接数据库的测试:

 <?php

function OpenCon()
{
    $dbhost = 'localhost';
    $dbuser = 'root';
    $dbpass = '0000';
    $db = 'mydatabase';

$conn = new mysqli($dbhost, $dbuser, $dbpass, $db) or die ("Connect failed: %s\n". $conn -> error);

return $conn;
}

function CloseCon($conn)
{
    $conn -> close();
}

?>

这是索引文件。一旦我运行它,它就会显示连接成功。

    <?php

include 'connection.php';

$conn = OpenCon();

echo "Connected Successfully";

CloseCon($conn);

?>

我已经用 HTML 编写了注册表,并通过如下所述的操作方法将其组合起来:

<form id='register-form' action="database/reg.php" method='post'>
            <input type="text" maxlength="15" name="usr" placeholder="Username" required>
            <input type="text" name="fname" placeholder="First Name" required>
            <input type="text" name="lname" placeholder="Last Name" required>
            <input type="email" name="mail" placeholder="Email" required>
            <input type="password" name="psw" placeholder="Password" required>
            <input type="password" placeholder="Re Password" required>
            <button type='submit'> Εγγραφή</button>

我已经注意了文件的放置位置(目录等) 但是一旦我输入数据,它就会显示这个(主要是应该运行的 PHP 文件)Code of PHP instead of Alert Window

有人可以帮助我或指出我缺少什么吗?

这是处理事务的文件:

    <?php

include 'connection.php';

$a=$_POST["fname"];
$b=$_POST["lname"];
$c=$_POST["usr"];
$d=$_POST["psw"];
$e=$_POST["mail"];



$con = OpenCon();


$query="INSERT INTO users(firstname,lastname,username,password,email) VALUES ('$a','$b','$c','$d','$e')";

if(mysqli_query($con, $query)){
    echo "<script>alert('Success') </script>";
}

CloseCon($con);

?>

【问题讨论】:

  • 问题显然不是您无法连接到数据库,而是您的代码没有被解释。因此,请添加更多关于哪些文件负责处理数据的信息。
  • @arkascha 我在图片中显示的文件(PHP 代码而不是警报窗口)应该将数据发送到数据库
  • 不,那张图片显示了一些代码,但没有显示来自哪个文件以及您的设置方式。
  • 检查包含 php 代码的文件的扩展名。必须是.php
  • @PrinceBrucex 是.php

标签: php mysql database registration


【解决方案1】:

您必须使用mysqli_query 而不是mysql_query

if(mysqli_query($con, $query)) {

因为你是通过mysqli连接的。

【讨论】:

    【解决方案2】:

    我认为您插入数据的查询在语法上是错误的。应该是这样的......

    您必须将列名括在反引号内,即 (``)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-04-21
      • 2014-04-19
      • 1970-01-01
      • 2019-05-02
      • 2013-04-05
      • 2013-12-01
      • 2021-07-24
      • 2020-02-28
      相关资源
      最近更新 更多