Visualizzazione risultati 1 fino 8 di 8

Discussione: Form upload

  1. #1
    Guest

    Predefinito Form upload

    ciao a tutti,
    ho scaricato un form di upload in php ma ho notato che non funziona su altervista, mi chedo se non funziona per colpa di un errore mio oppure perchè non può funzionare qui.
    Questo form include l'invio di due email una a me per avvertirmi che ho un nuovo file nella direcotry ed una di ringraziamento alla persona che ha spedito il file...vorrei sapere se è consentito inserire un form in php per l'invio di email oppure è sempre un problema mio dovuto all'errato settaggio...
    a presto.

  2. #2
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Il problema può essere dato dal fatto che AlterVista permette di spedire due e-mail ogni tre secondi. Il tuo script tenta di spedirne due sicuramente in meno di tre secondi. Comunque se scrivi qualcosa di più sullo script possiamo aiutarti a modificarlo, facendo in modo che gli indirizzi siano in BCC, così da spedire una sola e-mail.

    P.S.: Sposto nella sezione dedicata al PHP.
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  3. #3
    Guest

    Predefinito

    ok grazie infinite...effettivamente il problema riguardante la mail potrebbe essere quello in quanto ho notato che il messaggio che mi avverte che è arrivato un nuovo file ora arriva ma quello di ringraziamento agli utenti che hanno madnato il file no.
    Ma cosa mi dici riguardo l'upload del file?
    Ho porvato lo script su un'altro spazio gratuito e funziona ma non manda le email...qui mi pare ke io abbia il problema contrario ora!!!
    in ogni caso, ti incollo di seguito lo script in php con l'annesso form in html così lo puoi controllare meglio.

    Questo è lo script già settato per lo spazio dove è indirizzato:


    Codice PHP:
    <?

    /* Easy Uploader */

    // set variables (SET THESE TO SUIT YOUR CIRCUMSTANCES):

    // Upload directory (MUST HAVE TRAILING SLASH):
    $uploaddir="/file_ricevuti/";
    // Your email
    $youremail="slam.mix@virgilio.it";
    // Thank you page:
    $thankspage="http://www.lautoitaliana.altervista.org/grazie.htm";

    // Set Upload thanks message for USER
    $uptymessage=$realname.", Grazie per aver mandato il file: $file_name\n\nWe alla redazione di \"lautoitaliana\".";
    // Set Upload thanks message for OWNER
    $ownermessage=$realname." [ ".$email." ] ha appena inviato il file $file_name\n\nCheck alla directori di \"lautoitaliana\".";
    // Email message on or off ? 1 = on, 0 = off
    $emailmessages = "1";


    // start code (DO NOT CHANGE ANYTHING BELOW THIS LINE):

    // Check for valid email address

    $x = ereg("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,3}$",$email);

    if(
    $x==0)

    // if no valid email address entered, display no email message
    {
    echo
    "<div align=center>You <b>must</b> specify a valid email address for yourself. <a href=javascript:history.back(-1)>Return to the form</a>.</div>";
    }
    else {

    // Check to see if valid file
    if ($file == "none") {
    // if no valid email address entered, display no file message
    echo "<div align=center>You <b>must</b> specify a file to upload. <a href=javascript:history.back(-1)>Return to the form</a>.</div>";
    }
    else {
    //directory to upload to
    copy($file, $uploaddir.$file_name);
    unlink($file);

    //return thank you page
    Header("Location: $thankspage");
    }
    }
    if (
    $emailmessages == "1") {
    //mail you to let you know a new uploaded file
    mail("$youremail", "Uploaded file", "$ownermessage");
    //mail user to thank them
    mail("$email", "Uploaded file", "$uptymessage");
    exit;
    }

    ?>
    e questo invece è il form:

    Codice HTML:
    <html>
    <head>
    <title>Untitled Document</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>
    
    <body bgcolor="#FFFFFF">
    <form action="upload.php" method="post" ENCTYPE="multipart/form-data"> 
       File to upload:<input type="file" size=40 name="file"><br> 
       <input type="hidden" name="MAX_FILE_SIZE" value="1000">
    Your Name<input type="text" name="realname"><br>
    Your Email<input type="text" name="email"><br> 
       <input type="submit" value="upload"> 
       </form> 
    </body>
    </html>
    Fatemi sapere qualcosa voi perchè io appresso a sto script sto diventando scemo...grazie infinite...a presto.
    Ultima modifica di funcool : 17-02-2007 alle ore 11.25.48

  4. #4
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Prova a modificare questa riga:
    Codice PHP:
    $uploaddir="/file_ricevuti/";
    In questo modo:
    Codice PHP:
    $uploaddir="file_ricevuti/";
    Oppure in questo modo:
    Codice PHP:
    $uploaddir="/membri/lautoitaliana/file_ricevuti/";
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  5. #5
    Guest

    Predefinito

    ok, ora funziona grazie infinite!!!!!!
    L'unico problema è l'email di ringraziamento come posso fare a sfare l'invio delle due email di 3 secondi l'una dall'altra?
    Grazie ancora per la soluzione!!!!!

    EDIT: Ho riscontrato un'altro problema.
    qalche norme farabutto ha inviato nell'upoìload un php attraverso il quale è riuscito ad entrare nel mio spazio e a modificare la home page...come posso fare a bloccare i file in maniera tale che mi vengano solo inviati file immagini?
    Ultima modifica di funcool : 18-02-2007 alle ore 18.19.05

  6. #6
    L'avatar di silverseraph
    silverseraph non è connesso AlterGuru
    Data registrazione
    27-04-2005
    Residenza
    Localhost
    Messaggi
    1,104

    Predefinito

    poi fare così:
    Codice PHP:
    $name = $_FILES['file']['name'];
    $name = exlpode (".", $name);
    if (
    $name[1] == "gif" || $name[1] == "jpg" || $name[1] == "png" etc...)
    {
    esegui il codice...
    }
    else
    {
    echo
    "Formato non valido";
    }

  7. #7
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Lo script di Silverseraph contiene un errore nel chiamare la funzione explode, potrebbe essere aggirabile chiamando i file "nome.gif.php" e non farebbe caricare immagini che hanno l'estensione in maiuscolo.
    Quindi correggendolo:
    Codice PHP:
    $name=explode(".",$_FILES['file']['name']);
    $estensione=strtolower($name[count($name)-1]);
    if (
    $estensione=="gif" || $estensione=="jpg" || $estensione=="png") {
    // Carica il file
    }
    else {
    // Errore
    }
    Naturalmente è possibile aggiungere altre estensioni nell'if.
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  8. #8
    Guest

    Predefinito

    ho provato ad aggiungere lo script da voi proposto nel mio script di upload ma con la mia scarsa conoscenza in php non ce l'ho fatta...potete accorparli voi x me?
    Penso che si un problema di nome di variabili!!!
    Scusate se vi chiedo questo ma non lo so fare proprio!!

    EDIT: Ok ho risolto il problema...l'ho integrato e funziona perfettamente.
    volevo xò se è possibile inviare delle mail con allegati da altervista dal momento in cui vorrei che se un file viene inviato in un formato ke nno è un'immagine il sistema me lo mandi sull'email dopo poi lo posso esaminare!!


    FunCool: Non scrivere due messaggi consecutivi, utilizza il tasto Edita.
    Ultima modifica di funcool : 20-02-2007 alle ore 10.47.20

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •