kokrek3 (01.04.2013 / 13:17)
Gaucer, как?
Да посмотри, какой файл импортирует, зайди и удали проверку. Там все понятно по структуре.
<?php
/**
* @package JohnCMS
* @link http://johncms.com
* @copyright Copyright (C) 2008-2011 JohnCMS Community
* @license LICENSE.txt (see attached file)
* @version VERSION.txt (see attached file)
* @author http://johncms.com/about
*/
defined('_IN_JOHNCMS') or die('Error: restricted access');
require('../incfiles/head.php');
if ($rights == 4 || $rights >= 6) {
$req = mysql_query("SELECT * FROM `down_files` WHERE `type` = 1 AND `id` = '$id' LIMIT 1");
$res = mysql_fetch_assoc($req);
if (!mysql_num_rows($req) || !is_dir($res['dir'] . '/' . $res['name'])) {
echo functions::display_error('Каталог не существует
<a href="index.php">К категориям</a>');
require('../incfiles/end.php');
exit;
}
$al_ext = $res['field'] ? explode(', ', $res['text']) : $defaultExt;
if (isset($_POST['submit'])) {
$load_cat = $res['dir'] . '/' . $res['name'];
$error = array ();
$link = isset($_POST['fail']) ? str_replace('./', '_', trim($_POST['fail'])) : null;
if ($link) {
if (mb_substr($link, 0, 7) !== 'http://')
$error[] = 'Неправильно введена ссылка';
else
$link = str_replace('http://', '', $link);
}
if ($link && !$error) {
$fname = basename($link);
$new_file = isset($_POST['new_file']) ? trim($_POST['new_file']) : null;
$name = isset($_POST['text']) ? trim($_POST['text']) : null;
$name_link = isset($_POST['name_link']) ? functions::check(mb_substr($_POST['name_link'], 0, 200)) : null;
$text = isset($_POST['opis']) ? mysql_real_escape_string(trim($_POST['opis'])) : null;
$ext = explode(".", $fname);
if (!empty($new_file)) {
$fname = strtolower($new_file . '.' . $ext[1]);
$ext = explode(".", $fname);
}
if (empty($name))
$name = $fname;
if (empty($name_link))
$error[] = 'Не заполнено поле.';
if (count($ext) != 2)
$error[] = 'Неправильное имя файла! К отправке разрешены только файлы имеющие имя и одно расширение (<b>name.ext</b>)';
if (!in_array($ext[1], $al_ext))
$error[] = 'Запрещенный тип файла! К отправке разрешены только файлы, имеющие следующее расширение: ' . implode(', ', $al_ext);
if (strlen($fname) > 30)
$error[] = 'Длина названия файла и названия для сохранеия не должна превышать 30 символов';
if (preg_match("/[^\da-z_\-.]+/", $fname))
$error[] = 'В названии файла присутствуют недопустимые символы. Разрешены только латинские символы, цифры и некоторые знаки ( .()+_- ). Запрещены пробелы.';
} elseif (!$link) {
$error[] = 'Вы не ввели ссылку.';
}
if ($error) {
$error[] = '<a href="index.php?act=import&id=' . $id . '">Повторить</a>';
echo functions::display_error($error);
} else {
if (file_exists("$load_cat/$fname"))
$fname = $realtime . $fname;
if (copy('http://' . $link, "$load_cat/$fname")) {
echo '<div class="phdr"><b>Импорт файла</b></div>';
echo '<div class="gmenu">Файл выгружен</div>';
$fname = mysql_real_escape_string($fname);
$name = mysql_real_escape_string(mb_substr($name, 0, 200));
mysql_query("INSERT INTO `down_files` SET `refid`='$id', `dir`='$load_cat', `time`='$realtime',`name`='$fname', `text` = '$name_link',`rus_name`='$name', `type` = '2',`user_id`='$user_id', `about` = '$text'");
$file_id = mysql_insert_id();
require('../incfiles/lib/class.upload.php');
$handle = new upload($_FILES['screen']);
if ($handle->uploaded) {
if (mkdir($screens_path . '/' . $file_id, 0777) == true)
@chmod($screens_path . '/' . $file_id, 0777);
$handle->file_new_name_body = $file_id;
$handle->allowed = array (
'image/jpeg',
'image/gif',
'image/png'
);
$handle->file_max_size = 1024 * $set['flsz'];
$handle->file_overwrite = true;
if ($set_down['screen_resize']) {
$handle->image_resize = true;
$handle->image_x = 240;
$handle->image_ratio_y = true;
}
$handle->process($screens_path . '/' . $file_id . '/');
if ($handle->processed) {
echo '<div class="rmenu">Скриншот прикреплен</div>';
} else
echo '<div class="rmenu">Скриншот не прикреплен: ' . $handle->error . '</div>';
}
echo '<div class="menu"><a href="index.php?act=view&id=' . $file_id . '">К файлу</a></div>';
$dirid = $id;
$sql = '';
while ($dirid != '0' && $dirid != "") {
$res_down = mysql_fetch_assoc(mysql_query("SELECT `refid` FROM `down_files` WHERE `type` = 1 AND `id` = '$dirid' LIMIT 1"));
if ($i)
$sql .= ' OR ';
$sql .= '`id` = \'' . $dirid . '\'';
$dirid = $res_down['refid'];
++$i;
}
mysql_query("UPDATE `down_files` SET `total` = (`total`+1) WHERE $sql");
mysql_query("OPTIMIZE TABLE `down_files`");
echo '<div class="phdr"><a href="index.php?act=import&id=' . $id . '">Выгрузить еще</a> | ';
echo '<a href="index.php?id=' . $id . '">Вернуться в категорию</a></div>';
} else
echo '<div class="rmenu">Ошибка импорта.
<a href="index.php?act=import&id=' . $id . '">Повторить</a></div>';
}
} else {
echo '<div class="phdr"><b>Импорт файла: ' . functions::checkout($res['rus_name']) . '</b></div>';
echo '<div class="list1"><form action="index.php?act=import&id=' . $id
. '" method="post" enctype="multipart/form-data">
Ссылка<span class="red">*</span>:
<input type="post" name="fail" value="http://"/>
Сохранить как (max. 30, без расширения):
<input type="text" name="new_file"/>
Скриншот:
<input type="file" name="screen"/>
Название файла (мах. 200):
<input type="text" name="text"/>
Ссылка для скачки файла (мах. 200)<span class="red">*</span>:
<input type="text" name="name_link" value="Скачать файл"/>
Описание (max. 500)
<textarea name="opis"></textarea>';
echo '
<input type="submit" name="submit" value="Импортировать"/></form>';
echo '</div><div class="phdr"><small>Max. вес: ' . $set['flsz'] . ' кб, расширения: ' . implode(', ', $al_ext) . ($set_down['screen_resize'] ? '
Скриншот будет автоматически преоброзаван в картинку, шириной не превышающую 240px (высота будет вычислина автоматически)' : '') . '</small></div>';
echo '<p><a href="index.php?id=' . $id . '">Назад</a></p>';
}
} else {
header('Location: ' . $set['homeurl'] . '/?err');
}
?>
нужно убрать вот это?
if (empty($name))
$name = $fname;
if (empty($name_link))
$error[] = 'Не заполнено поле.';
if (count($ext) != 2)
$error[] = 'Неправильное имя файла! К отправке разрешены только файлы имеющие имя и одно расширение (<b>name.ext</b>)';
if (!in_array($ext[1], $al_ext))
$error[] = 'Запрещенный тип файла! К отправке разрешены только файлы, имеющие следующее расширение: ' . implode(', ', $al_ext);
if (strlen($fname) > 30)
$error[] = 'Длина названия файла и названия для сохранеия не должна превышать 30 символов';
if (preg_match("/[^\da-z_\-.]+/", $fname))
$error[] = 'В названии файла присутствуют недопустимые символы. Разрешены только латинские символы, цифры и некоторые знаки ( .()+_- ). Запрещены пробелы.';
Ну ты не убирай прямо все. Оно не для красоты придумано. Пробелы оставь.
Gaucer, тогда я только вот это уберу, то что мне мешает
if (!in_array($ext[1], $al_ext))
$error[] = 'Запрещенный тип файла! К отправке разрешены только файлы, имеющие следующее расширение: ' . implode(', ', $al_ext);
if (strlen($fname) > 30)
$error[] = 'Длина названия файла и названия для сохранеия не должна превышать 30 символов';
if (preg_match("/[^\da-z_\-.]+/", $fname))
$error[] = 'В названии файла присутствуют недопустимые символы. Разрешены только латинские символы, цифры и некоторые знаки ( .()+_- ). Запрещены пробелы.';
-akcent-, с удовольствием тебе отвечу, все плееры онлайн воспроизводят только видео с кодеком H.264 надо видео конвертировать либо на сервере либо на компе и выгружать
блин проблема на денвер поставил ffmреg и в загрузки не зайдешь ошибку ХМL разбора выдает
Не установлены размеры для скриншотов с видео, если загрузить видео с высоким разрешением, то скрин будет тоже большим
пример
Картинки,нельзя скачать,при выборе размера.