Загрузка изображений из фронтенда
есть код который работает, но немного не как надо
Как переделать этот код что нормально работал когда его вызываешь так
$output = true;
$counter = 1;
$ext_array = array('jpg', 'png', 'gif', 'JPG', 'mp3');
$mydir = $modx->user->get('id');
$uploadpath = 'assets/uploads/'.$mydir.'/';
$target_path = $modx->config['base_path'] . $uploadpath;
$submittedfiles = array_keys($_FILES);
foreach ($submittedfiles as $sf) {
$filename = basename( $_FILES[$sf]['name'] );
$ext = pathinfo($filename, PATHINFO_EXTENSION);
$ext = mb_strtolower($ext); // case insensitive
if($filename != '') {
if(in_array($ext, $ext_array)) {
$filename = $counter . '.' . $ext;
$filename = str_replace(' ', '_', $filename); // spaces to underscores
$filename = date("Y-m-d_G-i-s_") . $filename; // add date & time
$myTarget = $target_path . $filename;
mkdir($target_path, 0755, true);
if(move_uploaded_file($_FILES[$sf]['tmp_name'], $myTarget)) {
$myFile = $uploadpath . $filename;
$hook->setValue($sf,$myFile);
if (!chmod($myTarget, 0644)) { /*some debug function*/ }
} else {
$errorMsg = 'Ошибка с загрузкой изображения';
$hook->addError($sf, $errorMsg);
$output = false;
}
} else {
$errorMsg = 'Type of file not allowed.';
$hook->addError($sf, $errorMsg);
$output = false;
}
} else {
$hook->setValue($sf, '');
}
$counter = $counter + 1;
}
$tvar = $modx->newObject('modTemplateVarResource', array('contentid' => $id, 'tmplvarid' => $tv));
$tvar->set('value', $output);
$tvar->save();
Как переделать этот код что нормально работал когда его вызываешь так
$modx->runSnippet('loadImg',array('id'=>$newResource['id'], 'tv' => 8, 'value' => $img));
Комментарии: 1
Загрузка одного изображения, а не массива
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.