使用PHP SQL在单个表单中上传2个图像

时间:2014-10-22 13:39:49

标签: php jquery html sql image

我需要帮助,我想创建一个可以上传两个图像的表单,一个用于缩略图,一个用于主图像。它们应该保存在不同的文件夹中,但保存在一个数据库表中。谢谢你这里是我所做的但问题是1.图像不保存在数据库中

<?php
require_once('includes/rypecms.php');
error_reporting(0);
if($_POST['submit'])
{

$lname=basename($_FILES['file_upload']['name']);
$ltname=$_FILES['file_upload']['tmp_name'];
$tname=basename($_FILES['file_upload']['tname']);
$ttname=$_FILES['file_upload']['tmp_name'];
$imagename = $_POST['imagename'];
$content = $_POST['content'];
$links = $_POST['links'];
$dir='image';
$dir2='thumb';
if(move_uploaded_file($ltname,$dir."/".$lname)){
        if(move_uploaded_file($ttname,$dir2."/".$tname)){

        {
            mysql_select_db($database_rypecms, $rypecms);
            $qur="INSERT INTO portweb (id, name, tname, imagename, content, links, pathl, patht) VALUES(' ', '$lname', '$tname', '$imagename', '$content', '$links', 'image/$lname' , 'thumb/$tname' )";
            $res=mysql_query($qur , $rypecms);
            echo 'files upload success';

        }

    }

}
}
?>

here is the form. two file upload buttons.one for thumbnail and the other for the main image

<html>
<head>
<title>upload pictures portfolio web</title>
</head>
<body>
<a href="portweb.php">Back</a>
<br />
<form action="addportweb.php" method="post" enctype="multipart/form-data">
<label>Main image:</label><input type="file" name="file_upload" /><br />
<label>Thumbnail:</label><input type="file" name="file_upload" /><br />
<label>Name:</label> <input type="text" name="imagename" class="text_input" maxlength="100" /><br />
<label>Description:</label>
<textarea name="content" style="width: 300px; height:80px; padding: 5px; resize:none;" ></textarea>
<br />
<label>Link:</label> <textarea name="links" style="width: 100px; height:50px; padding: 5px; resize:none;" ></textarea><br />
<input type="submit" name="submit" value="upload" /> 
</form>
</body>
</html>

2 个答案:

答案 0 :(得分:1)

或者您可以这样使用文件字段数组:

<input type="file" name="file_upload[]" />
<input type="file" name="file_upload[]" />

以这种方式var_dump $ _FILES [&#39; file_upload&#39;]您将获得要访问的结构。

希望它有所帮助!

答案 1 :(得分:0)

您应该更改文件上传的名称,以便每个文件都是一个单独的变量。

<input type="file" name="file_upload" />
<input type="file" name="file_upload_thumb" />

然后在php中,您应该为主文件调用$_FILES['file_upload'],为缩略图文件调用$_FILES['file_upload_thumb']

$lname=basename($_FILES['file_upload']['name']);
$ltname=$_FILES['file_upload']['tmp_name'];
$tname=basename($_FILES['file_upload_thumb']['tname']);
$ttname=$_FILES['file_upload_thumb']['tmp_name'];

这有助于您不要更改代码的整个结构。