$ _POST Yeni bir giriş türü "dosya" ekledikten sonra boş gidiyor

1 Cevap php

Anlıyorum ve bu sorunu çözmek için bir yol bulmak değil ve ben bir sürü şey yaptım.

Ben bir senaryo var, dilek bir dosya oluk POST gönderir basit bir formudur. İkinci dosya, bilgi işlem.

Varsayılan olarak, ben kullanıcıya birkaç alanları, bunlardan birini vermek tip "dosyasının" bir giriş alanı olan ve bir kaç "gizli" kimse bana değerlerini verir POST üzerinde çalışmak için de var.

Tipi "dosyasının" yeni bir girdi, hatta $ _FILES hiçbir şey döndürür $ _POST döner dizi 0, eklerken, bulundu. Bunu düzeltmek için nasıl hiçbir fikrim yok, ve tip "dosyası" varsayılan giriş kutusunu tutarak zaman gayet güzel çalışıyor.

<form id="formulario" enctype="multipart/form-data" action="projectos_processar.php" method="POST">

    Modo inserir projecto item!<br/><br/>
    <label>Imagem de apresentacao: </label>

    <input id="img_p_child" type="file" name="img_p_child" cols="100" value="" class="validate['required','image']" /><br/>

    <br/>
    <br/>

    <input type="file" id="video" name="video" class="validate['required','video']" cols="100">

    <br/>                       
    <br/>
    <hr>
    Publicar o item ? <br/>
    <br/>
    <br/>                       

    Sim <input type="radio" name="published" value="1"><br>
    Nao <input type="radio" name="published" value="0" checked="true"><br>

    <hr>

    <!-- INICIO:: CAMPOS EM MODO HIDDEN -->
    <input type="hidden" value="center" name="crop_X_Y" />
    <input  type="hidden" value="assets/publicidade/FURIOUS01/" name="stringDirPagina" />
    <input  type="hidden" value="128" name="parent_id" />
    <input  type="hidden" value="projectos_item" name="pagina_id"/>
    <input  type="hidden" value="inserir" name="tarefa" />
    <!-- FIM:: CAMPOS EM MODO HIDDEN -->

    <br/>
    <input type="submit" value="Enviar" />
</form>

Bu sadece olur:

<input type="file" id="video" name="video" class="validate['required','video']" cols="100">

Var!

var_dump( $_POST ) ya da $_FILES, print_r(), vb hiçbir döndürür. Ben bir img_p_child[] gibi tip "dosyalar", girişindeki dizi, ama bir şey oluşturmak için trieed ettik.

Bunu çözmek için?

Zaman ayırdığınız için teşekkürler!


Ben şu anda bu ikinci giriş alanına bir görüntü dosyası gönderme trieed ve çalışıyor, ama değil. FLV dosyası ile, belirtmeyi unutmuşum. Yani ben bu durumda eğer, ben özür dilerim, php.ini üzerinde değiştirmeniz gerekir ki, maksimum izin var sanıyorum! : X

1 Cevap

Taken from php.net:

post_max_size affects file upload. To upload large files, this value must be larger than upload_max_filesize. If memory limit is enabled by your configure script, memory_limit also affects file uploading. Generally speaking, memory_limit should be larger than post_max_size. When an integer is used, the value is measured in bytes. Shorthand notation may also be used. If the size of post data is greater than post_max_size, the $_POST and $_FILES superglobals are empty. This can be tracked in various ways, e.g. by passing the $_GET variable to the script processing the data, i.e. , and then checking if $_GET['processed'] is set.

memory_limit sets the maximum amount of memory in bytes that a script is allowed to allocate. This helps prevent poorly written scripts for eating up all available memory on a server. Note that to have no memory limit, set this directive to -1.

Söyleniyor, daha büyük yüklenenler izin için php.ini bazı şeyleri değiştirmeniz gerekir:

upload_max_filesize = 10M;
post_max_size = 20M;
memory_limit = 18M; 

Eğer kök dizininde. Htaccess dosyasına aşağıdaki ekleyin.

php_value upload_max_filesize 10M
php_value post_max_size 20M
php_value memory_limit 18M 

Açıkçası, bu boyutları sizin ihtiyaçlarınıza göre değişecektir. Here is a nice article yükleme boyutunu artırarak.