Здравейте имам следният код за ъплоад:
Задал съм максимален размер на файла 30МБ, но когато опитам да кача видео файл с размер 2 МБ системата извежда съобщение:
Ето го и конфиг файла, където съм задал това:
Някакви идеи от къде идва грешката ?
Код:
<?php
require "includes/config.php";
require "includes/functions.php";
$error = '';
if (isset($_POST['submit']) && !empty($_FILES['pic']['name']) && !empty($_FILES['fail']['name']) && !empty($_POST['subject']) && !empty($_POST['imenavideoto']) && !empty($_POST['dobavil']) )
{
if (in_array(strtolower(end(explode(".", $_FILES['pic']['name']))), $exp_pic))
{
if (in_array(strtolower(end(explode(".", $_FILES['fail']['name']))), $exp_file))
{
if ($_FILES['pic']['size'] > 0 && $_FILES['pic']['size'] <= ($max_size_pic * 1024))
{
if ($_FILES['fail']['size'] > 0 && $_FILES['fail']['size'] <= ($max_size_file * 1048576))
{
$file_copy = preg_replace("/([\/])+/", "\\1", $file_copy."/");
$ex_pic = end(explode(".", $_FILES['pic']['name']));
$ex_file = end(explode(".", $_FILES['fail']['name']));
$new_name_pic = new_name($ex_pic);
$new_name_file = new_name($ex_file);
while (file_exists($file_copy.$new_name_pic)) { $new_name_pic = new_name($ex_pic); }
while (file_exists($file_copy.$new_name_file)) { $new_name_file = new_name($ex_file); }
if (@copy($_FILES['fail']['tmp_name'], $file_copy.$new_name_file) && @copy($_FILES['pic']['tmp_name'], $file_copy.$new_name_pic))
{
mysql_query("INSERT INTO `videos` (`imenavideoto`,`dobavil`,`pic`,`file`,`subject`) VALUES ('".htmlspecialchars($_POST['imenavideoto'])."','".htmlspecialchars($_POST['dobavil'])."','".$file_copy.$new_name_pic."','".$file_copy.$new_name_file."','".htmlspecialchars($_POST['subject'])."')");
$error = "Файла беше качен успешно!";
}
else
{
$error = "Файла не беше качен!<br /> След преглед и одобрение от администратор файлът ще бъде видим за всички потребители.";
}
}
else
{
$error = "Файла не трябва да превишава $max_size_file MB!";
}
}
else
{
$error = "Картинката не трябва да превишава $max_size_pic KB!";
}
}
else
{
$error = "Позволени са само следните разширения за файла: ".implode(",", $exp_file);
}
}
else
{
$error = "Позволени са само следните разширения за картинка: ".implode(",", $exp_pic);
}
}
?>
<b><u>Всички полета са задължителни!</u></b>
<form action="" enctype="multipart/form-data" method="post">
<table border="0">
<tr><td>Заглавие:</td><td><input type="txt" name="imenavideoto"><br />(може да използвате кирилица и/или латиница)</td></tr>
<tr><td>Избери видео:</td><td><input type="file" name="fail"><br />(позволени формати: <b>flv, avi</b> максимален размер: <b><?php echo "".$max_size_file." MB"; ?></b>)</td></tr>
<tr><td>Изберете картинка:</td><td><input type="file" name="pic"><br />(позволени формати: <b>jpg, png, gif, jpeg</b> максимален размер: <b><?php echo "".$max_size_pic." KB"; ?></b>) </td></tr>
<tr><td>BBCODE:</td><td><script>edToolbar('mtxtarea'); </script><br />
<tr><td>Описание:</td><td><textarea name="subject" id="mtxtarea" rows="5" cols="30"></textarea></td></tr>
<tr><td>Добавил:</td><td><input type="txt" name="dobavil"><br />(може да използвате кирилица и/или латиница)</td></tr>
</table>
<input type="submit" name="submit" value="Изпрати">
</form>
<b><?=$error?></b>
Задал съм максимален размер на файла 30МБ, но когато опитам да кача видео файл с размер 2 МБ системата извежда съобщение:
...Файла не трябва да превишава 30 MB!
Ето го и конфиг файла, където съм задал това:
Код:
<?php
$db_conn = @mysql_connect("localhost", "", "") or die(mysql_error()); // тук си пишете данните за връзка с MySQL
@mysql_select_db("", $db_conn) or die(mysql_error()); // тук ви е връзкта с базата данни.
mysql_query("SET NAMES utf8_bin");
$exp_pic = array("jpg","png","gif","jpeg"); // разширения за картинката
$exp_file = array("avi","mpg","wmv","3gp","flv","mp4","mov","mkv"); // разширения за файловете
$max_size_pic = 500; // запишете максималния размер на картинката(в KB)
$max_size_file = 30; // запишете максималния размер на файла(в MB)
$file_copy = "video/"; // къде да се записват файловете
$max_simbols = 300; // колко символа да изкарва в индекса от описанието на всеки файл
$max_width_pic = 300; // максимална ширина на картинката
$max_height_pic = 300; // максимална височина на картинката
?>
Някакви идеи от къде идва грешката ?