Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    110

    Problema Form Html e Php

    Ciao a tutti, vi spiego il mio problema:

    sto sviluppando un sito in php nuke, e ho creato una form html con un input type=file:
    codice:
    <input type='file' name='foto' size='40' maxlength='80' value='pippo'/>
    Innanzitutto, anche se setto l'attributo value, il campo di testo dell'input type=file rimane vuoto invece che visualizzare la stringa 'pippo'. Come mai? Comunque il problema fondamentale è il seguente: la variabile $foto, alla pressione del submit, viene inviata ad un gestore. Questa funzione prende $foto (che è una stringa rapprensentate il percorso di un file situato in locale), crea una directory e copia $foto in tale directory. Io ho pensato:

    codice:
    <?php
        //varie cose
        mkdir("/new/directory");
        copy($foto, "/new/directory");
        //altre cose
    ?>
    Quando scelgo il file da caricare, dopo la pressione del tasto browse, il campo di testo della input type=file visualizza tutta la stringa rappresentate il percorso locale da cui caricare l'immagine (es: C:/Windows/System/pippo.jpg). Alla pressione del tasto submit, mi aspetto che la variabile $foto passata all'handler con metodo post contenga tutta la stringa C:/Windows/System/pippo.jpg, in maniera tale da utilizzarla correttamente nella funzione copy sopra citata, ma in realtà la variabile $foto contiene solo "pippo.jpg" . Perchè? Come faccio a memorizzare in foto tutto il percorso corretto? Risolto tale problema, la funzione copy funzionerebbe correttamente? Spero di essere stato il più chiaro possibile. Grazie in anticipo.

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Lato client: Non puoi modificare né settare il valore di un campo file, motivi di sicurezza.

    Lato server: anzi, direi che è strano (possibile falla nella sicurezza) che tu riesca a leggere il nome (anche in parte) del file in $foto, non dovrebbe essere così. I file inviati al server si gestiscono tramite $_FILES.

    Un'ultima cosa, puoi leggere il valore (intero percorso) di un campo file con javascript, ad esempio:

    codice:
    <html>
      <body>
        <input type="file" name="file" id="file" />
        <input type="button" name="button" onclick="alert(document.getElementById('file').value);" value="Leggi Campo File">
      </body>
    </html>
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

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.