将查询插入MYSQL数据库

时间:2016-03-15 15:19:10

标签: php html mysql sql forms

我是php的新手,所以我一直在尝试创建一个将信息添加到Mysql数据库的php页面。但是,当我按下表单上的提交时,它会指向php页面并且没有任何反应。空白页。

这是我到目前为止所拥有的。

表格

<table class="table" >
  <h2>Resturants</h2>
  <tbody>
    <form data-toggle="validator" enctype="multipart/form-data" action="editRestaurants.php" method="post">
      <tr>
        <td><label for="inputName" class="control-label" style="font-size:17px;">Title :</label></td>
        <td><input type="text" class="form-control" id="title" name="title" required></td>
      </tr>
      <tr>
        <td><label for="inputName" class="control-label" style="font-size:17px;">Text :</label></td> 
        <td><textarea style="width:300px;height:100px" class="form-control" id="text" name="text" required></textarea><br/></td>
      </tr>
      <tr>
        <td><label for="inputName" class="control-label" style="font-size:17px;">Link :</label></td> 
        <td><input type="text" class="form-control" id="link" name="link" required></td>
      </tr>
      <tr>
        <td><label for="inputName" class="control-label" style="font-size:17px;">Photo:</label></td>
        <td><input type="file" id="image" class="form-control" name="image" accept="image/jpeg" required></td>
      </tr>
      <tr>
        <td><input type="submit" value="Submit" style="font-size:17px;" id="submit"></td>
      </tr>
    </form>
  </tbody>
</table>

这是php文件

include('connection.php'); 
session_start(); 
$title=$_POST['title']; 
$text=$_POST['text']; 
$link=$_POST['link']; 
$image=$_FILES['image']; 
$imagename=$image['name']; 
if(empty($imagename)) 
{ 
    $imagename="defualt.jpg"; 
} 
if(!empty($title) && !empty($text)) 
{ 
    $query=mysqli_query($GLOBALS["___mysqli_ston"], 'INSERT INTO `resturant`(`ID`, `Title`, `ImagePath`, `Text`, `Link`, `Date`) VALUES (NULL,'$title','$imagename','$text','$link',CURRENT_DATE())');


    if(!empty($image)) 
    { 
    $target_dir= "NewsImages/"; 
    $target_file = $target_dir . basename($imagename); 
    move_uploaded_file($image["tmp_name"], $target_file); 

    } 

    $_SESSION['status']="Successful"; 
} 
else 
{ 
    $_SESSION['status']="Please check all fields"; 

} 

header('Location:cms.php'); 

3 个答案:

答案 0 :(得分:1)

您的$query语法错误。以下代码可以使用:

$query=mysqli_query($GLOBALS["___mysqli_ston"], "INSERT INTO `resturant`(`ID`, `Title`, `ImagePath`, `Text`, `Link`, `Date`) VALUES (NULL,'$title','$imagename','$text','$link',CURRENT_DATE())");

我已经简化了您的代码。现在,它将在重定向到cms.php之前检查文件是否已成功上传。

if(empty($imagename)) { 
    $imagename="defualt.jpg";
}

if(!empty($title) && !empty($text)) {
    $query=mysqli_query($GLOBALS["___mysqli_ston"], "INSERT INTO `resturant`(`ID`, `Title`, `ImagePath`, `Text`, `Link`, `Date`) VALUES (NULL,'$title','$imagename','$text','$link',CURRENT_DATE())");

    $target_dir= "NewsImages/"; 
    $target_file = $target_dir . basename($imagename);

    if(move_uploaded_file($image["tmp_name"], $target_file)) {
        $_SESSION['status']="Successful";
        header('Location:cms.php');
        exit;
    } else {
        $_SESSION['status']="Something went wrong while uploading the image.";
    }

} else { 
    $_SESSION['status']="Please check all fields";
}

答案 1 :(得分:0)

==========================[START OF HTML]============================
|<table class="table" >
  <h2>Resturants</h2>
  <tbody>
    <form data-toggle="validator" enctype="multipart/form-data" action="editRestaurants.php" method="post">
      <tr>
        <td><label for="inputName" class="control-label" style="font-size:17px;">Title :</label></td>
        <td><input type="text" class="form-control" id="title" name="title" required></td>
      </tr>
      <tr>
        <td><label for="inputName" class="control-label" style="font-size:17px;">Text :</label></td> 
        <td><textarea style="width:300px;height:100px" class="form-control" id="text" name="text" required></textarea><br/></td>
      </tr>
      <tr>
        <td><label for="inputName" class="control-label" style="font-size:17px;">Link :</label></td> 
        <td><input type="text" class="form-control" id="link" name="link" required></td>
      </tr>
      <tr>
        <td><label for="inputName" class="control-label" style="font-size:17px;">Photo:</label></td>
        <td><input type="file" id="image" class="form-control" name="image" accept="image/jpeg" required></td>
      </tr>
      <tr>
        <td><input type="submit" value="Submit" style="font-size:17px;" id="submit" name="submit"></td>
      </tr>
    </form>
  </tbody>
</table>
=====================[END OF HTML]========================
===========================================================
======================[START OF PHP]=======================
<?php
include('connection.php');
session_start();
$title=$_POST['title'];
$text=$_POST['text'];
$link=$_POST['link'];
$image=$_FILES['image'];
$imagename=$image['name'];
$submit=$_FILES['submit'];
if(isset($_POST['submit'])){
if(empty($imagename))
{
    $imagename="defualt.jpg";
}
if(!empty($title) && !empty($text))
{
    $query=mysql_query('INSERT INTO `resturant`(`ID`, `Title`, `ImagePath`, `Text`, `Link`, `Date`) VALUES (NULL,"'.$title.'","'.$imagename.'","'.$text.'","'.$link'",CURRENT_DATE())');
    if(!empty($image))
    {
    $target_dir= "NewsImages/";
    $target_file = $target_dir . basename($imagename);
    move_uploaded_file($image["tmp_name"], $target_file);
    }
    $_SESSION['status']="Successful";
}
else
{
    $_SESSION['status']="Please check all fields";
}
header('Location:cms.php');
}
?>
=========================[END OF PHP ]=============================

答案 2 :(得分:0)

I read your code and try to run it. try this code. It will help you           

1) connection.php

            <?php
            $con = mysqli_connect("localhost","root","","resturant");
            ?>

       2) form.php

        <?php  
        session_start();
        include('connection.php');
        if($_POST['submit']){ 

        echo $title=$_POST['title']; echo "<br>";
        echo $text=$_POST['text']; echo "<br>";
        echo $link=$_POST['link']; echo "<br>";
        echo $image=$_FILES['image']['name']; echo "<br>";


        if(!empty($title) && !empty($text) && !empty($image))
        { 

        $sql =  "INSERT INTO resturant(Title, ImagePath, Text, Link, Date) VALUES ('$title','$image','$text','$link',CURRENT_DATE())";

            $query = mysqli_query($con,$sql) or die(mysql_error());




             $path="NewsImages/$image";
             move_uploaded_file($_FILES['image']['tmp_name'],$path);




            $_SESSION['status']="Successful"; 
        } 
        else 
        { 
            $_SESSION['status']="Please check all fields"; 

        } 
        header('Location:cms.php');
        }



        ?>

        <table class="table">
          <h2>Resturants</h2>
          <tbody>
            <form data-toggle="validator" enctype="multipart/form-data" action="" method="post">
              <tr>
                <td><label for="inputName" class="control-label" style="font-size:17px;">Title :</label></td>
                <td><input type="text" class="form-control" id="title" name="title" required></td>
              </tr>
              <tr>
                <td><label for="inputName" class="control-label" style="font-size:17px;">Text :</label></td> 
                <td><textarea style="width:300px;height:100px" class="form-control" id="text" name="text" required></textarea><br/></td>
              </tr>
              <tr>
                <td><label for="inputName" class="control-label" style="font-size:17px;">Link :</label></td> 
                <td><input type="text" class="form-control" id="link" name="link" required></td>
              </tr>
              <tr>
                <td><label for="inputName" class="control-label" style="font-size:17px;">Photo:</label></td>
                <td><input type="file" id="image" class="form-control" name="image" accept="image/jpeg" required></td>
              </tr>
              <tr>
                <td><input type="submit" value="Submit" style="font-size:17px;" name="submit"></td>
              </tr>
            </form>
          </tbody>
        </table>





    3) cms.php

    <?php

    session_start();

    echo $_SESSION['status'];