2017-05-27 105 views
0

我创建了一个HTML表单,它将运行PHP文件并在数据库中上传图像和文本。我的HTML完美地指向PHP,但上传过程不工作。每次按下提交按钮,该php文件显示不起作用。上传图片到数据库不工作

我的HTML代码:

<form name="f1" method="post" action="php/Savent.php" 
enctype="application/x-www-form-urlencoded"> 
    <fieldset> 
     <legend name = "addev" align="right"><b>Detail</b></legend> 
     <table width="100%"> 
      <tr align="center"> 
       <th>Choose Image : </th> 
       <td><input type="file" name="image"/></td> 
      </tr> 
      <tr> 
       <td colspan="2"><br/></td> 
      </tr> 
      <tr align="center"> 
       <th>Description : </th> 
       <td><textarea name="desc" rows="6" cols="30" style="resize: 
        none"></textarea></td> 
      </tr> 
      <tr> 
       <td colspan="2"><br/></td> 
      </tr> 
      <tr align="center"> 
       <td colspan="2" align="center"><input name="submit" 
        type="submit" value="Submit"/> <input type="reset" 
        value="Reset"/></td> 
      </tr> 
      <tr> 
       <td colspan="2"><br/></td> 
      </tr> 
     </table> 

PHP代码:

<?php 

    if(isset($_POST["submit"])){ 
    mysqli_connect("sql303.unaux.com","unaux_20153623","testin"); 
    mysqli_select_db("unaux_20153623_dummy"); 

    $imageName = mysqli_real_escape_string($_FILES["image"]["name"]); 
    $imageData = 
    mysqli_real_escape_string(file_get_contents($_FILES["image"] 
    ["tmp_name"])); 
    $imageType = mysqli_real_escape_string($_FILES["image"]["type"]); 
    $desc = mysqli_real_escape_string($_POST["desc"]); 

    if (substr($imageType,0,5) == "image"){ 
     echo "Working"; 
    mysqli_query("INSERT INTO 'events' 
    VALUES('','$imageName','$imageData','$desc')"); 
    echo "Saved Succesfully"; 
    } 
    else{ 
    echo "Not Working"; 
    } 
    } 

    ?> 
+1

你使用错误的enctype。请参阅https://stackoverflow.com/questions/4526273/what-does-enctype-multipart-form-data-mean –

+0

此外,您还需要在执行查询时传递连接变量。 – Akintunde007

+0

同样在你的插入语句中,你需要使用反引号而不是单引号围绕你的表名。确保事件表只有4列 – Akintunde007

回答

0

添加这是enctype =形式元素 “的multipart/form-data的” 你正在使用错误的加密类型

+0

这只是其中的一部分。你错过了很多东西。 –

+0

是的,我看到代码,他错过了连接,他的查询也有错误,并感谢指出,因为你的评论后,我看到了他的整个代码,但幸好他已经使用mysqli不是MySQL – user3337667