使用 php 上传图片并将表单数据保存到 Mysql 数据库中
Upload image and save form data into a Mysql db using php
我正在编写代码,我可以在文件夹中上传图像并将数据形式保存到 Mysql 数据库中。目前只是在数据库 table 中保存数据形式正在工作,但我无法将图像上传到文件夹中。这是代码:
<?php
if(isset($_POST['upload_img'])){
$file_name = $_FILES['image']['name'];
$file_type = $_FILES['image']['type'];
$file_size = $_FILES['image']['size'];
$file_tmp_name = $_FILES['image']['tmp_name'];
if($file_name){
move_uploaded_file($file_tmp_name,"images/$file_name");
}
}
?>
<?php
include 'guestconfig/config.php';
if (isset($_POST['upload_img']) && $_POST['upload_img']=="invia")
{
$image = $file_name;
$title = addslashes($_POST['title']);
$price = addslashes($_POST['price']);
$sql = "INSERT INTO testone
(image,title,price) VALUES ('$image', '$title','$price')";
if($result = mysql_query($sql) or die (mysql_error()))
{
echo "Inserimento avvenuto con successo.<br>
Vai alla <a href=\"index.php\">Home Amministrazione</a>";
}
}else{
?>
<table border="1">
<tr>
<td>
<img src="xxx.jpg" alt="xxx" />
<img src="xxx.jpg" alt="xxx" />
</td>
</tr>
<tr>
<td>
<form action="" method="post" enctype="multipart/form-data">
<label>upload image </label><br>
<input type="file" name="image"><br>
<br><br>
title:
<input name="title" type="text"><br><br>
price:
<input name="price" type="text"><br><br>
<input name="upload_img" type="submit" value="invia">
</form>
</td>
</tr>
</table>
<?php
}
?>
<br>
希望你能帮助我。谢谢! :)
编辑: 好的,现在我可以上传我的图片了,但我无法保存图片名称(之前我可以)。请问我该怎么做?谢谢! :)
EDIT2: 好的,现在完美了……谢谢大家! :)
表单标签必须像这样
<form action="" method="post" enctype="multipart/form-data">
在 php 中你可以做这样的事情
if(!empty($file_name)){
move_uploaded_file($file_tmp_name,"images/".$file_name);
}
先把ctype="multipart/form-data"
换成enctype="multipart/form-data"
if(!empty($file_name)){
if(move_uploaded_file($file_tmp_name,"images/".$file_name))
echo "image uploaded";
else echo "image not uploaded";
}
表单标签有误
<form action="" method="post" enctype="multipart/form-data">
我正在编写代码,我可以在文件夹中上传图像并将数据形式保存到 Mysql 数据库中。目前只是在数据库 table 中保存数据形式正在工作,但我无法将图像上传到文件夹中。这是代码:
<?php
if(isset($_POST['upload_img'])){
$file_name = $_FILES['image']['name'];
$file_type = $_FILES['image']['type'];
$file_size = $_FILES['image']['size'];
$file_tmp_name = $_FILES['image']['tmp_name'];
if($file_name){
move_uploaded_file($file_tmp_name,"images/$file_name");
}
}
?>
<?php
include 'guestconfig/config.php';
if (isset($_POST['upload_img']) && $_POST['upload_img']=="invia")
{
$image = $file_name;
$title = addslashes($_POST['title']);
$price = addslashes($_POST['price']);
$sql = "INSERT INTO testone
(image,title,price) VALUES ('$image', '$title','$price')";
if($result = mysql_query($sql) or die (mysql_error()))
{
echo "Inserimento avvenuto con successo.<br>
Vai alla <a href=\"index.php\">Home Amministrazione</a>";
}
}else{
?>
<table border="1">
<tr>
<td>
<img src="xxx.jpg" alt="xxx" />
<img src="xxx.jpg" alt="xxx" />
</td>
</tr>
<tr>
<td>
<form action="" method="post" enctype="multipart/form-data">
<label>upload image </label><br>
<input type="file" name="image"><br>
<br><br>
title:
<input name="title" type="text"><br><br>
price:
<input name="price" type="text"><br><br>
<input name="upload_img" type="submit" value="invia">
</form>
</td>
</tr>
</table>
<?php
}
?>
<br>
希望你能帮助我。谢谢! :)
编辑: 好的,现在我可以上传我的图片了,但我无法保存图片名称(之前我可以)。请问我该怎么做?谢谢! :)
EDIT2: 好的,现在完美了……谢谢大家! :)
表单标签必须像这样
<form action="" method="post" enctype="multipart/form-data">
在 php 中你可以做这样的事情
if(!empty($file_name)){
move_uploaded_file($file_tmp_name,"images/".$file_name);
}
先把ctype="multipart/form-data"
换成enctype="multipart/form-data"
if(!empty($file_name)){
if(move_uploaded_file($file_tmp_name,"images/".$file_name))
echo "image uploaded";
else echo "image not uploaded";
}
表单标签有误
<form action="" method="post" enctype="multipart/form-data">