Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: $_FILES['userfile']['tmp_name'] все время пустой
 
 автор: SnooPI   (04.02.2008 в 12:20)   письмо автору
 
 

Здравствуйте..
Вот опять прооблема..
Не загружается файл т.к. в массиве $_FILES['userfile']['tmp_name'] пусто!
Не знаю что делать и не могу понять причины почему пусто..
Винда..поэтому с правами проблем быть не может


<?php
    error_reporting
(0);
    include(
"wrapper.php");

    
$do        = isset($_GET['do'])    ?    $_GET['do']            :    '';
    
$id        = isset($_GET['id'])    ?    intval($_GET['id'])    :    '';
    
$page    = isset($_GET['page'])    ?    intval($_GET['page'])    :    '';
    
$cat    = isset($_GET['cat'])    ?    $_GET['cat']            :    '';


    if (!
get_magic_quotes_gpc())
    {
        
$do mysql_escape_string($do);
        
$cat mysql_escape_string($cat);
    }

    function 
rus2lat($string)
    {
        
$string strtr(
        
$string,
        
"абвгдеёзийклмнопрстуфхъыьэ АБВГДЕЁЗИЙКЛМНОПРСТУФХЪЫЬЭ&><",
        
"abvgdeeziiklmnoprstufhyyyi_ABVGDEEZIIKLMNOPRSTUFHIIIE___");
       return 
str_replace(
          array(
'ж''ц''ч''ш''щ',  'ю''я''Ж',
                                          
'Ц''Ч''Ш''Щ',  'Ю''Я'),
          array(
'zh','ts','ch','sh','sch','yu','ya','ZH',
                                          
'TC','CH','SH','SCH','YU','YA'),
          
$string);
    }

    
$max_size            50 1024;
    
$valid_types        = array("gif""jpg""jpeg");
    
$date                 date("d-m-y"time());
    
$dir                "./upload/".$date."/";

    if (isset(
$_FILES["userfile"]))
    {
        
print_r($_FILES);
        if(empty(
$_POST['name']) || empty($_POST['desc']))
        {
            echo 
'Заполните все поля';
            include(
'footer.php');
            exit();
        }
        else
        if(
$_POST['folder'] == '0')
        {
            echo 
'Выберите категорию';
            include(
'footer.php');
            exit();
        }
        else
        {
            if(
is_uploaded_file($_FILES['userfile']['tmp_name']))
            {

                
$filename    $_FILES['userfile']['tmp_name'];
                
$name        rus2lat($_FILES['userfile']['name']);
                
$ext substr($namestrrpos($name"."));
                if(
filesize($filename) > $max_size)
                {
                    echo 
'<span style="color:red; font-weight: bold">Слишком большой файл</span>';
                }
                else
                if(!
in_array($ext$valid_types))
                {
                    echo 
'<span style="color:red; font-weight: bold">Неверный формат файла...</span>';
                }
                else
                {
                    
mkdir($dir0777);

                    
$num 1;
                    while(
file_exists($dir.$name))
                    {
                        ++
$num;
                        
$file_name $num.$name;
                        
$name $file_name;
                    }

                    if(
move_uploaded_file($filename$dir.$name))
                    {
                        
$_POST['folder'] = intval($_POST['folder']);
                        if (!
get_magic_quotes_gpc())
                        {
                             
$_POST['name']    = mysql_escape_string($_POST['name']);
                             
$_POST['desc']    = mysql_escape_string($_POST['desc']);
                             
$name    mysql_escape_string($name);
                        }

                        
$query "INSERT INTO `images` VALUES(NULL, '".$name."', '".$_POST['name']."', '".$_POST['folder']."', '".$_POST['desc']."', '1')";
                        if(
mysql_query($query))
                        {
                            echo 
"Файл успешно загружен";
                            echo 
"<HTML><HEAD><META HTTP-EQUIV='Refresh' CONTENT='1; URL=index.php?cat=".$_POST['folder']."'></HEAD></HTML>";
                        }
                        else
                        {
                             exit(
"Ошибка при добавлении файла- ".mysql_error());
                        }
                    }
                    else
                    {
                        echo 
'<span style="color:red; font-weight: bold">Ошибка....</span>';
                    }
                }
            }
            else
            {
                echo 
'<span style="color:red; font-weight: bold">Файл не загружен...</span>';
            }
        }
    }
    else
    {
?>
<center><table><form enctype="multipart/form-data" method="post">

<tr><td>Название:</td><td><input type="text" name="name" value="" size="33" /></td></tr>
<tr><td>Описание:</td><td><textarea name="desc" maxlength="400" rows="5" cols="25"></textarea></td></tr>
<tr><td>Раздел:</td><td><select name="folder">
<option value="0">Выбрать...</option>';
<?php
    $query 
"SELECT * FROM `cat` ORDER BY `id` ASC";
    
$result mysql_query($query);
    for(
$i 0$i mysql_num_rows($result); $i++)
    {
        
$row        mysql_fetch_array($result);
        echo 
"<option value=".$row['id'].">".$row['name']."</option>";
    }
    echo 
"</select></td></tr>";
?>
<tr><td>Файл:</td><td><input type="file" name="userfile" /></td></tr>
<td colspan="2" align="right"><input type="submit" value="Загрузить" /></td></tr>

</form></table></center>
<?php
    
}
?>

   
 
 автор: Dobryy   (04.02.2008 в 14:26)   письмо автору
 
   для: SnooPI   (04.02.2008 в 12:20)
 

Я с таким сталкивался в случае, если размер загружаемого файла больше чем 'post_max_size' или 'upload_max_filesize'.

   
 
 автор: Unkind   (04.02.2008 в 14:47)   письмо автору
 
   для: SnooPI   (04.02.2008 в 12:20)
 

Смотрите код ошибки: $_FILES['userfile']['error']

   
 
 автор: SnooPI   (04.02.2008 в 15:40)   письмо автору
 
   для: Unkind   (04.02.2008 в 14:47)
 

Код ошибки 6

   
 
 автор: Trianon   (04.02.2008 в 15:46)   письмо автору
 
   для: SnooPI   (04.02.2008 в 15:40)
 

Смотрите в мануале, что он означает.

http://ru2.php.net/manual/en/features.file-upload.php

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования