Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.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 - Fatal编程技术网

无法通过php文件将数据插入MySQL

无法通过php文件将数据插入MySQL,php,mysql,Php,Mysql,我知道这样的问题已经被否决或关闭,但是我已经看完了之前提出的所有问题,找不到任何解决方案。代码应该接受来自HTML表单的输入,并将其插入MySQL数据库并显示在另一个页面上,但不知何故,我最终得到了查询失败语句并重定向到登录页面 <?php if (isset($_POST['eTransport_ID'])){ $id = ($_POST['eTransport_ID']); } if (isset($_POST[

我知道这样的问题已经被否决或关闭,但是我已经看完了之前提出的所有问题,找不到任何解决方案。代码应该接受来自HTML表单的输入,并将其插入MySQL数据库并显示在另一个页面上,但不知何故,我最终得到了查询失败语句并重定向到登录页面

<?php
        if (isset($_POST['eTransport_ID'])){
            $id = ($_POST['eTransport_ID']);
        }

        if (isset($_POST['Phone_No'])){
            $phone = ($_POST['Phone_No']);
        }

        if (isset($_POST['Amount'])){
            $amount = ($_POST['Amount']);
        }
        $DATEE = date("Y-m-d");
        $TIMEE = date("h:i:sa");

        $query = "INSERT INTO recharge_history(Date, Time, Amount, Agent_No, eTransport_ID) VALUES ('$DATEE', '$TIMEE', '$amount', 'WEB', '$id')";
        $added = mysqli_query($conn, $query);

        if(!$added){
            die("Database query failed.");
        }
        else{
            echo "Data Entered Successfully";
        }

        mysqli_close($conn);
    ?>

  • 这是错误的代码,具有严重的SQL注入漏洞,因此请单独研究(您的问题不是关于安全性)
  • 我假设'Date'是一个日期列
  • 我假设“时间”是一个时间列
  • 看起来Agent_No可能是一个INT列,但您正在插入一个字符串。我用“1”代替了“1”,所以你必须分开看
  • 如果我的假设是正确的,只需将查询行更改为以下内容(即:复制并粘贴):

  • 这是错误的代码,具有严重的SQL注入漏洞,因此请单独研究(您的问题不是关于安全性)
  • 我假设'Date'是一个日期列
  • 我假设“时间”是一个时间列
  • 看起来Agent_No可能是一个INT列,但您正在插入一个字符串。我用“1”代替了“1”,所以你必须分开看
  • 如果我的假设是正确的,只需将查询行更改为以下内容(即:复制并粘贴):

    $query=“插入充值\历史记录(日期、时间、金额、代理号、eTransport\ ID)值('$DATEE'、'$TIMEE'、'$Amount'、'WEB'、'$ID')

    你能这样写查询吗

    $query=“插入充值\历史记录(日期、时间、金额、代理号、eTransport\ ID)值($DATEE、$TIMEE、$Amount、$phone、$ID)”

    $query=“插入充值历史记录(日期、时间、金额、代理编号、eTransport\u ID)值(“$DATEE”、“$TIMEE”、“$Amount”、“WEB”、“$ID”)”

    你能这样写查询吗


    $query=“插入充值\历史记录(日期、时间、金额、代理号、eTransport\ ID)值($DATEE、$TIMEE、$Amount、$phone、$ID)”

    回显您的
    $query
    并尝试手动将其运行到您的dbstry{$query goes here}catch(异常$e){print_r($e);}您将了解语句中的问题所在这是错误的建议@jackbrone。mysql\u查询不会抛出异常尝试此示例将帮助您查找错误。如果(!mysqli_query($con,$query)){echo($Error description:“.mysqli_Error($con));}回显您的
    $query
    ,并尝试手动将其运行到您的数据库中{$query goes here}catch(Exception$e){print_r($e)},您将知道您的语句中的问题在哪里了这是错误的建议@jackbrone。mysql\u查询不会抛出异常尝试此示例将帮助您查找错误。如果(!mysqli_query($con,$query)){echo($Error description:.mysqli_Error($con))}以前的代理编号是以前的INT数据类型,但我将其更改为VARCHAR,这是因为假设充值代理通过机器为ID卡充值,因此它们将具有代理编号,并与web充值区分开来,我决定输入“WEB”来表示补足是通过网页完成的。然而,我确实尝试了你的建议,但不幸的是,它没有奏效:(以前的代理编号是以前的INT数据类型,但我将其更改为VARCHAR,因为假设充值代理通过机器为ID卡充值,因此他们将有一个代理编号,并且为了与web充值区分开来,我决定输入“web”以指示充值是通过网页完成的。不过,我确实尝试了您的建议。)t不幸的是,它没有起作用:(
    $query = "INSERT INTO recharge_history (`Date`, `Time`, `Amount`, `Agent_No`, `eTransport_ID`) VALUES (NOW(), NOW(), $amount, 'WEB', $id)";