Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2008
    Messaggi
    16

    controllo estensione allegato

    Ciao a tutti!!!!
    Ho un problema....devo fare un controllo all'estensione di un allegato che successivamente faro inviare via email ma non riesco a capire il perchè mi entra sempre nell'if in cui l'estensione del file allegato è diversa dal tipo stabilito, anche quando inserisco il file correttamente. ho provato anche a far stampare il valore di $file_type ed è quello corretto... Vi posto il codice anche perchè credo che sbaglio a fare il controllo.....


    if( $file_type != "image/jpeg" || $file_type != "image/gif" ){..

    ecco dove faccio il controllo dell'estensione del file.... vedete un po voi che io ho iniziato da poco e non riesco proprio a capire....

    Vi ringrazio anticipatamente!!!!

    ps:mi sono appena registrato perciò siate buoni....non sono un web guru....

  2. #2
    E' un problema di logica. Se ad esempio hai $file_type = "image/jpeg", le due condizioni saranno:

    false || true = true

    Codice PHP:
    if(!(($file_type == "image/jpeg") || ($file_type == "image/gif"))){ 

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2008
    Messaggi
    16
    Mannaggia mannaggia.....
    è chiaro.....giustamente li ci entra sempre.... quindi quindi dovrei fare degli if annidati...
    o cose del genere...cmq ho capito l'errore.

    Grazie della risposta rapida....sei stato gentilissimo.
    Ciao e buona giornata!!!!

  4. #4
    Non servono IF annidati. O utilizzi la condizione indicata, oppure un bel !in_array(), così puoi facilmente aumentare le estensioni supportate semplicemente inserendo un'altro conten type nell'array di controllo.

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2008
    Messaggi
    16
    Grazie mille.
    ho risolto con gli if.... non ho utilizzato !in_array() perche ancora so come funziona ma ho visto che alla fine non è difficile. ora pero volevo chiedeti un'altra cosa...
    sto facendo controlli per verificare che nell'input type text sia inserito un nome e lo sto facendo cosi:
    ((is_string($nome))== false)
    se è vera questa condizione vado a richiamare il form solo che...non mi funziona...
    l'ho fatto anche per i numeri utilizzando is_numeric() e va bene ma con questa..

    Volevo approfittarne anche per chiederti se potevo gestire l'inserimento di carratteri speciali in una textarea (tag, apostofri, caratteri con accento..) utilizzando l funzione HtmlEntities().


    Ciao e grazie di nuovo

  6. #6
    Studiati questo codice:

    Codice PHP:
    <pre>
    <?php 

    $var 
    '';
    var_dump(is_string($var));

    $var 'test';
    var_dump(is_string($var));

    $var null;
    var_dump(is_string($var));

    $var 123;
    var_dump(is_string($var));

    $var '123';
    var_dump(is_string($var));

    ?>
    </pre>
    E guarda anche http://www.php.net/empty

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.