表单被提交时,MySQL数据库不会更新

时间:2017-10-24 08:26:57

标签: php html mysql database

已编辑我正在使用HTML表单和PHP将数据上传到MySQL数据库。当我提交信息时,我上传的图像被移动到特定文件夹(我想要的方式),但数据不会上传到数据库。 我现在添加了大部分代码,网站不允许我添加所有内容,我删除了一些在我看来与手头的问题没有任何关系的行。所以也许你会看到问题:

<!DOCTYPE>
<?php 

include("includes/db.php");

?>
<html>
<head>
    <title>Inserting Product</title> 

<script src="//tinymce.cachefly.net/4.1/tinymce.min.js"></script>
<script>
    tinymce.init({selector:'textarea'});
</script>
</head>

<body bgcolor="grey">


<form action="insert_product.php" method="post" enctype="multipart/form-
data"> 

    <table align="center" width="795" border="2" bgcolor="lime">

        </tr>

        <tr>
            <td align="right"><b>Product Category:</b></td>
            <td>
            <select name="product_cat" >
                <option>Select a Category</option>
                <?php 
    $get_cats = "select * from categories";

    $run_cats = mysqli_query($con, $get_cats);

    while ($row_cats=mysqli_fetch_array($run_cats)){

    $cat_id = $row_cats['cat_id']; 
    $cat_title = $row_cats['cat_title'];

    echo "<option value='$cat_id'>$cat_title</option>";
}
                ?>
            </select>
</td>
        </tr>

        <tr>
            <td align="right"><b>Product Publisher:</b></td>
        <td>            <select name="product_dev">
            <option>Select a Publisher</option>
            <?php
            $get_devs = "select * from developers";

            $run_devs = mysqli_query($con, $get_devs);

            while ($row_devs=mysqli_fetch_array($run_devs)){

            $dev_id = $row_devs['dev_id']; 
            $dev_title = $row_devs['dev_title'];

            echo "<option value='$dev_id'>$dev_title</option>";
}
            ?>
        </select>


            </td>
        </tr>

        <tr>
            <td align="right"><b>Product Image:</b></td>
            <td><input type="file" name="product_image" /></td>
        </tr>

        <tr>
            <td align="right"><b>Product Price:</b></td>
            <td><input type="text" name="product_price" required/></td>
        </tr>

        <tr>
            <td align="right"><b>Product Keywords:</b></td>
            <td><input type="text" name="product_keywords" size="50" 
required/></td>
        </tr>
        <tr align="center">
            <td colspan="7"><input type="submit" name="insert_post" 
value="Insert Product Now"/></td>
        </tr>
    </table>
</form>
</body> 
</html>
<?php 

if(isset($_POST['insert_post'])){

    $product_title = $_POST['product_title'];
    $product_cat= $_POST['product_cat'];
    $product_pub = $_POST['product_pub'];
    $product_dev = $_POST['product_dev'];
    $product_price = $_POST['product_price'];
    $product_desc = $_POST['product_desc'];
    $product_keywords = $_POST['product_keywords'];

    $product_image = $_FILES['product_image']['name'];
    $product_image_tmp = $_FILES['product_image']['tmp_name'];

    move_uploaded_file($product_image_tmp,"product_images/$product_image");

     $insert_product = "insert into products 
(product_cat,product_pub,product_dev,
product_title,product_price,product_desc,product_image,
product_keywords) values ('$product_cat','$product_pub','$product_dev',
'$product_title','$product_price','$product_desc',
'$product_image','$product_keywords')";

     $insert_pro = mysqli_query($con, $insert_product);

     if($insert_pro){

     echo "<script>alert('Product Has been inserted!')</script>";
     echo "<script>window.open('index.php?insert_product','_self')
</script>";

     }
}


?>

1 个答案:

答案 0 :(得分:-3)

您的查询似乎很好。 只需验证您的MySQLi连接。

应该是这样的:

$con = mysqli_connect("HOST", "USERNAME", "PASSWORD", "DATABASE_NAME");