如何使用类型为 "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);
?>
如果有任何问题或错误,请随时发表评论,我会帮助您。
我真的不知道如何将我的图片存储在数据库中。用户将 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);
?>
如果有任何问题或错误,请随时发表评论,我会帮助您。