PHP无法执行查询

时间:2016-05-05 05:20:52

标签: php mysql database forms post

我正在使用php 5.6.20

在管理页面中我正在尝试添加产品,但似乎后期剂量不起作用且查询剂量未执行 The database taple 表格

        <form id="myform"method="post"action="Admin.php">

        <table class="userinf">
            <tr>
                <th colspan="2"><label class="labeli">Add Product</label></th>
            </tr>
            <tr>
                <td><label class="labelii">PID</label></td>
                <td><input id ="iitxt0" class ="itxt"type="text" name="PID" value="<?php echo $row["UID"]; ?>"></td>
            </tr>
            <tr>
                <td><label class="labelii">Name</label></td>
                <td><input id ="iitxt1" class ="itxt"type="text" name="Name" required value="<?php echo $row["Name"]; ?>" "></td>
            </tr>
            <tr>
                <td><label class="labelii">Picture</label></td>
                <td><input id ="iitxt2" class ="itxt" type="text" name="Picture" required value="<?php echo $row["Email"]; ?>"></td>
            </tr>
            <tr>
                <td><label class="labelii">Price</label></td>
                <td><input id ="iitxt3" class ="itxt" type = "text" name="Price" pattern="[-+]?([0-9]*\.[0-9]+|[0-9]+)" required value="<?php echo $row["PhoneNo"]; ?>"></td>
            </tr>
            <tr>
                <td><label class="labelii">Type</label></td>
                <td><input id ="iitxt4" class ="itxt" type="text" name="Type"  required value="<?php echo $row["CreditNo"]; ?>"></td>
            </tr>
            <tr>
                <td><label class="labelii">Stock</label></td>
                <td><input id ="iitxt5" class ="itxt"type="number" name="Stock" value="<?php echo $row["City"]; ?>"></td>
            </tr>   
            <tr>
                <td colspan="2">
                    <button type="submit" id="Sbutt" class="Ebutton" onclick="submitform()">Save</button>
                </td>
            </tr>
        </table>
    </form>

PHP代码

<?php

        var_dump();
        if (isset($_POST["PID"]) && isset($_POST["Name"]) && isset($_POST["Picture"]) && isset($_POST["Price"]) && isset($_POST["Type"]) && isset($_POST["Stock"])){

        $PID=$_POST['PID'];
        $Name=$_POST['Name'];
        $Picture=$_POST['Picture'];
        $Price=floatval($_POST['Price']);
        $Type=$_POST['Type'];
        $Stock=intval($_POST['Stock']);
        $query="INSERT INTO `product` (`PID`, `Name`, `Picture`, `Price`, `Type`, `Stock`)"+
         +"VALUES ('$PID', '$Name', '$Picture','$Price', '$Type', '$Stock')";
        }
        if($_POST){
        if(!($database=mysql_connect("localhost","wadiahS","123456")))
          die("Could not connect to database</body></html>");
        if(!mysql_select_db("glow",$database))
          die("Could not open database</body></html>");
        if(!($result=mysql_query($query,$database))){
          print("<p>could not execute query</p>");
          die(mysql_error()."</body></html>");
        }
        mysql_close($database);
        }
   ?>

当我尝试发帖时 ii得到​​错误 /// 警告:var_dump()期望在第294行的C:\ xampp \ htdocs \ web \ pages \ Admin.php中给出至少1个参数0 无法执行查询

您的SQL语法有错误;查看与您的MariaDB服务器版本对应的手册,以获得在&#39; 0&#39;附近使用的正确语法。在第1行 ///

3 个答案:

答案 0 :(得分:0)

您正在使用加号(+)连接查询 在PHP中使用点(。)连接字符串 同时删除var_dump()或向其添加任何参数。

$query="INSERT INTO `product` (`PID`, `Name`, `Picture`, `Price`, `Type`, `Stock`)" . "VALUES ('$PID', '$Name', '$Picture','$Price', '$Type', '$Stock')";

答案 1 :(得分:0)

从查询中删除空的var_dump()和+

$query="INSERT INTO `product` (`PID`, `Name`, `Picture`, `Price`, `Type`, `Stock`) VALUES ('$PID', '$Name', '$Picture','$Price', '$Type', '$Stock')";

答案 2 :(得分:0)

我认为你在查询中有语法错误。你需要用下面的代码替换你的查询代码我希望它有用。如果你想连接任何你需要使用(。)运算符的东西,你可以在PHP中与(+)运算符连接。所以请用下面给出的更改您的查询变量。

 $query = "INSERT INTO `product` (`PID`, `Name`, `Picture`, `Price`, `Type`, `Stock`) VALUES ('$PID', '$Name', '$Picture','$Price', '$Type', '$Stock')";

用上面的替换你的查询变量。