如何使用类型为 "file" 的 html 表单将图片上传到数据库中?

How to upload picture into a database with a html form which have a type = "file"?

我真的不知道如何将我的图片存储在数据库中。用户将 select 一个文件,上传它,然后点击提交按钮。之后图片应该自动加载到数据库中。有什么简单的方法可以解决吗?我应该使用 BLOB 吗?如果我可以将图片加载到服务器中,并且 sql 变量将获取图片的路径,效率会更高。这个可以实现吗?

              <meta charset="UTF-8"/>
              <form method = "post" id= "myform" name="myform" action = "<?  php $_PHP_SELF ?>">
              <table width = "400" border = "0" cellspacing = "1" 
                 cellpadding = "2">


                    <td><input name = "user_name" type = "text" 
                       id = "user_name"></td>

                  <input name = "add" type = "submit" id = "add" 
                          value = "Küldés">
                 </tr>
               </form>



                    <td><form action="uploadpic.php" method="POST" enctype="multipart/form-data" />
                <input type="file" name="user_image" id="user_image" />

                </form>

基本上,您只需使用:

HTML:

<form action="uploadpic.php" method="POST" enctype="multipart/form-data" />
<input type="file" name="theimage" />
<input type="submit" value="Send">
</form>

PHP: (uploadpic.php)

<?php
$uid = uniqid();

$image = $uid . $_FILES['theimage']['name'];

//Make sure that the folder "images/" exists
move_uploaded_file($_FILES['theimage']['tmp_name'],'images/' . $uid . $_FILES['theimage']['name']);

// Assuming you already have the row and you use a SESSION which stores your username
$sql = mysql_query("UPDATE your_table SET image = '$image' WHERE username = $_SESSION['username']", $sqlconnection);
?>

如果有任何问题或错误,请随时发表评论,我会帮助您。