可以在服务器上的zend框架中上传多个图像

时间:2012-06-06 12:57:04

标签: php zend-framework

我在服务器

上使用zend框架上传mutilply文件时遇到问题

实际上我的代码在localhost上正常工作但在远程服务器上它给我提供了应用程序错误消息

我的主人是ipage.com

$upload = new Zend_File_Transfer_Adapter_Http();
$upload->setDestination('projects\\'.$_pId);
// $_pid is my project folder where all files related to it uploded
$files = $upload->getFileInfo();
$i = 1;$g = 1;
foreach ($files as $file => $info)
{
    // i have three kinds of images
    // innerfinishingphotos_ images which can be more than 1 file eg :innerfinishingphotos_1, innerfinishingphotos_2, innerfinishingphotos_3.
    // outerfinishingphotos_ images which can be more than 1 file eg :outerfinishingphotos_1, outerfinishingphotos_2, outerfinishingphotos_3.
    // _main_photo image an image.

    // here i made if statements to determine which file came from which input file 

    if( $info == $files["innerfinishingphotos_".$i] && $info["name"] ==  $files["innerfinishingphotos_".$i]["name"] && !empty( $info["name"] ) )
    {
        $filename = "inner_finishing".$_pId.uniqid().$files["innerfinishingphotos_".$i]["name"];
        $upload->addFilter('Rename', $filename, $files["innerfinishingphotos_".$i]);
        $photodata =  Array ("project_id"=> $_pId, "photo_link"=> "/projects/".$_pId."/".$filename, "photo_name"=> "inner_finishing");
        $projectModel->addInProjectGalary($photodata);
        $i++;
    }
    else if( $info == $files["outerfinishingphotos_".$g] && $info["name"] == $files["outerfinishingphotos_".$g]["name"] &&!empty( $info["name"] ) )
    {
        $filename = "outer_finishing".$_pId.uniqid().$files["outerfinishingphotos_".$g]["name"];
            $upload->addFilter('Rename', $filename, $files["outerfinishingphotos_".$g]);
            $photodata =  Array ("project_id"=> $_pId, "photo_link"=> "/projects/".$_pId."/".$filename, "photo_name"=> "outer_finishing");
            $projectModel->addInProjectGalary($photodata);
            $g++;
    }
    else if ($info == $files["_main_photo"] && !empty( $info["name"] ))
    {
        $filename = "main_photo".$_pId.uniqid().$files["_main_photo"]["name"];
            $upload->addFilter('Rename', $filename, $files["_main_photo"]);
            $photodata =  Array ("project_id"=> $_pId, "photo_link"=> "/projects/".$_pId."/".$filename, "photo_name"=> "project_photo");
            $projectModel->addInProjectGalary($photodata);  
    }

    //then i receive the image
    if($upload->isValid($file))
    {
        try {
            $upload->receive($file);  
            }
            catch (Exception $e) {
                echo "upload exteption";
            }   
    }
}

我测试了这段代码,我在localhost上正常工作,所有上传的图片和他们的数据都输入了我的数据库

但在我的远程主机'ipage.com'上无法正常工作。

请伙计们帮帮我

1 个答案:

答案 0 :(得分:0)

经过几个小时的尝试,我解决了这个问题,它在这一行中取笑

$upload->setDestination('projects\\'.$_pId);

将其更改为

$upload->setDestination('projects/'.$_pId);
谢谢先生。蒂姆喷泉