如何在php中将文件从一个页面发送到另一个页面

时间:2014-07-09 03:07:46

标签: php mysql image

我正在创建一个分类网站,用户可以在其中添加他的信息以添加图片。然后,此页面中的信息将被发送到另一个页面,用户会在该页面中验证信息是否正确。然后将信息发送到最后一页,通过预先准备的语句进入数据库。所以我需要将此文件发送到多个页面。我尝试按照以下方式发送

 $img = file_get_contents($_FILES['image']['tmp_name']);
<input type="hidden" name="image" value="<?php echo $img;?>" />

然而,图像的二进制源转义了value属性,我看到显示的二进制代码。我不想要这个。然后我被告知使用 move_upload_file ,但我不明白这对我有什么帮助。我可以将图像添加到目录中,但如何将文件放入我需要的其他页面?有什么想法或建议吗?

2 个答案:

答案 0 :(得分:0)

使用move_upload_file的想法是保存服务器中文件的临时副本。

如果过程结束,则保留服务器中的图像(如果不仅仅是删除

http://php.net/manual/en/function.move-uploaded-file.php

答案 1 :(得分:0)

这是我最近在项目中使用的一些代码

请注意,此代码中绝对没有安全实现

$uploaded = array();

if(!empty($_FILES['file']['name'][0])){
    foreach($_FILES['file']['name'] as $position => $name){


        if(move_uploaded_file($_FILES['file']['tmp_name'][$position], 'uploads/'.$name)){
            $uploaded[] = array(
                    'name' => $name,
                    'file' => 'uploads/'.$name
                );
        }//if
    }//foreach
}//if

这样做的想法是能够将已经上传到[file]超全局中的$_FILES[]数组的文件看到名为uploads/的服务器中的目录中。它使用foreach循环遍历您的案例中出现的每个文件,在[image]数组中,然后它将使用move_uploaded_file()方法从临时超全局位置移动到指定的服务器上的目的地。

move_uploaded_file(tmp_place, destination);