2014-12-02 146 views
-3

沒有錯誤的顯示,也代碼是行不通的。數據庫也沒有任何反應。當我打開我的頁面insert.php並填寫詳細信息時,只需重置表單。數據庫PHP MySQL的數據插入沒有錯誤顯示

//insert.php

<html> 
    <head> 
     <title>Insert Record</title> 
    </head> 
    <body> 
     <form action="insert.php" method="post"> 
     Name: <input type="text" name="name"><br><p /> 
     Roll No.: <input type="text" name="rollno"><br><p /> 
     Duration: <input type="text" name="duration"><br><p /> 
     Course: <input type="text" name="course"><br><p /> 
     Date of Birth: <input type="text" name="dob"><br><p /> 
     Photo: <input type="file" name="image"><br><p /> 
     <input type="submit" name="submit" value="Submit"> 
    </form> 

    <?php 
    error_reporting(0); 


    //connection 
    $servername = "localhost"; 
    $username = "root"; 
    $password = ""; 
    $dbname = "vision"; 

    // Create connection 
    $conn = new mysqli($servername, $username, $password,$dbname); 

    // Check connection 
    if ($conn->connect_error) { 
     die("Connection failed: " . $conn->connect_error); 
    } 

    $file = $_FILES["image"]["tmp_name"]; 
    if (!isset($file)) 
     {echo "Please Select an Image";} 
     else 
     { 
      $name = $_POST["name"]; 
      $rollno = $_POST["rollno"]; 
      $duration = $_POST["duration"]; 
      $dob = $_POST["dob"]; 
      $course = $_POST["course"]; 
      $image=addslashes(file_get_contents($_FILES["image"]["tmp_name"])); 
      //$image_name= addslashes($_FILES["image"]["name"]); 
      $image_size= getimagesize($_FILES["image"]["tmp_name"]); 

    //inserting data 

      if($image_size==FALSE) 
       {echo "That's not an Image";} 
      else 
      {  
       $sql = mysqli_query($conn,"INSERT INTO record(rollno,name,duration,dob,course,image)VALUES('$rollno','$name','$duration','$dob','$course','$image')"); 

       if($conn->query($sql) == TRUE) 
       { 
        echo "<br>Input data is succeed"; 
       } 
       else 
       { 
        echo "<br>Input data is fail"; 
       } 
      } 
     } 
    ?> 
    </body> 
    </html> 
+3

becoz你把使用error_reporting(0);改成error_reporting(E_ALL); – 2014-12-02 13:04:06

+1

BTW:將圖像轉換爲分貝是壞主意 – 2014-12-02 13:04:34

+1

寫ENCTYPE =「的multipart/form-data的」形式開放標籤,你上傳圖片/文件 – 2014-12-02 13:05:13

回答

2

這是因爲當沒有圖像存在,並且有永遠不會成爲一個像什麼都不會被顯示出來。當您想要張貼圖像時,您需要添加enctype標籤multipart/form-data

變化

<form action="insert.php" method="post"> 

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

如果你的圖像添加到您的形式,它會達到$sql = mysqli_query($conn,"INS....線。

+0

和'的error_reporting(0);!'.. – cybermonkey 2014-12-02 13:15:29

+1

他已經根據意見做了;) – 2014-12-02 13:18:19

1

用途: -

<form action="test.php" enctype="multipart/form-data" method="post"> 
+0

不,根據PHP程序的風格是'mysqli_query($康恩,$查詢)' – 2014-12-02 13:21:37

+0

okey,我糾正了那個:-)謝謝 – 3Demon 2014-12-02 13:22:15