|
|
|
|
<?php
function upload ($mod,$page,$img_alt){
global $link;
if (isset($_FILES['img']['name'])) {
switch($mod_img){
case 1: $uploaddir = $_SERVER['DOCUMENT_ROOT'] . "/content/menu/";
break;
case 11:
$uploaddir = $_SERVER['DOCUMENT_ROOT'] . "/content/advices/";
break;
case 13:
$uploaddir = $_SERVER['DOCUMENT_ROOT'] . "/content/quest/";
break;
case 4:
$uploaddir = $_SERVER['DOCUMENT_ROOT'] . "/content/contact/";
break;
}
$uploadfile_img = $uploaddir . basename($_FILES['img']['name']);
$max_image_width= 400;
$max_image_height= 500;
$max_img_size= 2000000;
if (move_uploaded_file($_FILES['img']['tmp_name'], $uploadfile_img)){
$filename = $_FILES['img']['tmp_name'];
if (filesize($filename) >= $max_img_size)
echo "Размер файла больше". $max_img_size;
elseif (!exif_imagetype($filename)) echo "Неправильное расширение файла.";
else{
$size = GetImageSize($filename);
if (isset($size) && ($size[0] <= $max_image_width) && ($size[1] <= $max_image_height)){
echo "Файл" . basename( $_FILES['img']['name']). "успешно загружен.";
return $uploadfile_img;
/*$sql="INSERT INTO `pages`(page_pid,page_name,id_mod,id_menu)
VALUES('$page','$name','$mod','$menu')";
mysql_query ($sql);
$auto_page = mysql_insert_id();
$sql1="INSERT INTO `img`(name,size,alt,id_menu,id_text, page_id)
VALUES('$name_img','$size','$img_alt','$menu_img','$text_img','$auto_page')";
mysql_query ($sql1);*/
}else echo "Неверные img-свойства.";
}
}else{
$error=$_FILES['myfile']['error'];
return $error;
return "Файл" . basename( $_FILES['img']['name']) . "не удалось загрузить.";
}
}
}
if (isset($_POST['send'])){
$img_alt = $_POST['img_alt'];
$page = intval($_POST['page']);
$mod_img = intval($_POST['modul']);
if ($mod_img && $page && $img_alt) echo upload($mod,$page,$img_alt);
else echo "ERROR!";
}
?>
|
Выдает две ошибки: Warning: filesize() [function.filesize]: stat failed for Z:\tmp\php2C47.tmp in Z:\home\avart.ua\www\upload1.php on line 33
Fatal error: Call to undefined function exif_imagetype() in Z:\home\avart.ua\www\upload1.php on line 35
PS Что-то я сегодня заработалась так, что запостила не в тот раздел. Прошу прощения. | |
|
|
|
|
|
|
|
для: Лена
(12.11.2008 в 16:52)
| | Лучше в функцию в таком случае передавать массив $_FILES, в нем можно узнать и $_FILES['img']['size']... | |
|
|
|
|
|
|
|
для: sim5
(12.11.2008 в 17:04)
| | В смысле? Он же у меня и так передается. Делаю print_r($_FILES) внутри функции - все элементы массива выводятся, в том числе и $_FILES['img']['size']... Объясните, пожалуйста. | |
|
|
|
|
|
|
|
для: Лена
(12.11.2008 в 17:20)
| | Пардон, у вас же в функции проверяется предача файла. Так и проверяйте его размер - $_FILES['img']['size']. | |
|
|
|
|
|
|
|
для: Лена
(12.11.2008 в 16:52)
| | if (move_uploaded_file($_FILES['img']['tmp_name'], $uploadfile_img)){
$filename = $_FILES['img']['tmp_name'];
if (filesize($filename) >= $max_img_size) echo "Размер файла больше". $max_img_size;
elseif (!exif_imagetype($filename)) echo "Неправильное расширение файла.";
Вы
1. перетащили файл с с места загрузки куда-то к себе
2. попытались проверить длину файла на месте загрузки
3. попытались проверить атрибуты длину файла на месте загрузки
Это всё при том, что на месте загрузки файла то уже нет. Вы ж его перетащили на п.1
Стоит ли удивляться ? | |
|
|
|
|
 3.1 Кб |
|
|
для: Trianon
(12.11.2008 в 22:16)
| | Исправила, но все равно не грузится.
Проблемы:
в нужную папку грузится только текст, без картинок
текст в базе не грузится
картинки вообще никуда не грузятся
ошибок на странице нет | |
|
|
|
|
|
|
|
для: Лена
(14.11.2008 в 12:43)
| | Я вам давал пример, причем с указанием относительных путей, который все загружал. И он у вас не работал? | |
|
|
|