0
모든 파일을 선택하지 않은 경우 같은 양식으로 여러 파일을 업로드 할 수없는 것 같습니다 (업로드 한 경우 작동).여러 파일을 업로드 할 수 없습니다.
관련 코드 :
<form id = "form" name = "form" action="<?php echo URLgenerator::getURL('project', 'group-edit', array('id' => $projectGroup->getId()), 'admin'); ?>" method="post" enctype='multipart/form-data'>
<?php
foreach($langs as $lang):
$langId = $lang->getId();
$displayName = $lang->getDisplayName();
?>
<fieldset id="In<?php echo $displayName; ?>">
<legend id ="<?php echo $langId?>">
<?php echo $displayName; ?>:
</legend>
<label for="name-<?php echo $langId; ?>">Name: </label>
<input type="text" id="name-<?php echo $langId; ?>" name="name-<?php echo $langId; ?>" style="width: 500px;" value="<?php echo $projectGroup->getName($lang); ?>" />
<br />
<label for="imageOff-<?php echo $langId; ?>">Image Off: </label>
<input type="file" id="imageOff-<?php echo $langId; ?>" name="imageOff-<?php echo $langId; ?>" />
<img src="<?php echo $projectGroup->getImageOffURL($lang); ?>" />
<br />
<label for="imageOn-<?php echo $langId; ?>">Image On: </label>
<input type="file" id="imageOn-<?php echo $langId; ?>" name="imageOn-<?php echo $langId; ?>" />
<img src="<?php echo $projectGroup->getImageOnURL($lang); ?>" />
</fieldset>
<?php
endforeach;
?>
<div align="center">
<input type="submit" value="Edit" id="button1" />
<input type="reset" id="button2" />
</div>
</form>
및 동작합니다 (위해서 var_dump 디버깅을위한)
public function groupEditAction()
{
$id = $this->getRequest()->getParam('id');
$projectGroup = new ProjectGroup($id);
$name = Array();
$langs = LangFuncs::getAllLangs();
foreach($langs as $lang) {
$langId = $lang->getId();
$name[$langId] = $this->getRequest()->getParam("name-$langId");
}
$projectGroup->edit(null, $name);
$upload = new Zend_File_Transfer_Adapter_Http();
$upload->setDestination(URLgenerator::getTempFolder());
$upload->receive();
$info = $upload->getFileInfo();
var_dump($info);
return;
foreach($langs as $lang) {
$langId = $lang->getId();
try {
if($info["imageOff-$langId"]['tmp_name'] != '') {
$projectGroup->uploadImageOff($lang, $info["imageOff-$langId"]['tmp_name']);
unlink($info["imageOff-$langId"]['tmp_name']);
}
if($info["imageOn-$langId"]['tmp_name'] != '') {
$projectGroup->uploadImageOn($lang, $info["imageOn-$langId"]['tmp_name']);
unlink($info["imageOn-$langId"]['tmp_name']);
}
}
catch (Zend_File_Transfer_Exception $e) {
$this->_helper->redirector('image-upload', 'error', 'admin', array());
}
}
$this->_helper->redirector('index', 'project', 'admin', array());
}
그래야합니까? –
아니요, foreach의 $ langId 변경 사항과 내가 확인한 방화 상자에서 서로 다릅니다 (on-1, off-1, on-2, off-2). – Vadiklk