2014-12-02 254 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

相关问题