Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 20
  1. #1

    allegare file in un form...aiuto urgente!!!!

    ciao a tutti...sono sempre io con i miei form
    allora devo far allegare dei file ai miei utenti ke compilano il form...allora io sul form ho inserito il campo file <input type="file" name="documento" size="20">

    sullo script ho provato a scrivere come ho fatto con i campi text e checkbox ma non funge cioè

    $documento = trim(stripslashes($_POST['documento']));

    e poi sul formato messaggio ho richiamato la variabile $documento ma non mi arriva il file allegato.sicuramente non è il metodo giusto come posso fare? grazie

  2. #2
    ecco lo script...devo creare un nuovo ciclo???








    <?php

    //
    $receiverMail = 'eleinad85@gmail.com';

    //
    $subject = 'CHECK LIST';

    //
    $nome = trim(stripslashes($_POST['nome']));
    $cognome = trim(stripslashes($_POST['cognome']));
    $struttura = trim(stripslashes($_POST['struttura']));
    $auditor = trim(stripslashes($_POST['auditor']));
    $verifica = trim(stripslashes($_POST['verifica']));
    $checklist = trim(stripslashes($_POST['checklist']));









    $d1_3= trim(stripslashes($_POST['d1_3']));
    $d1_2= trim(stripslashes($_POST['d1_2']));
    $d1_1= trim(stripslashes($_POST['d1_1']));
    $d1_0= trim(stripslashes($_POST['d1_0']));
    $d1_na= trim(stripslashes($_POST['d1_na']));

    $d2_3= trim(stripslashes($_POST['d2_3']));
    $d2_2= trim(stripslashes($_POST['d2_2']));
    $d2_1= trim(stripslashes($_POST['d2_1']));
    $d2_0= trim(stripslashes($_POST['d2_0']));
    $d2_na= trim(stripslashes($_POST['d2_na']));

    $d3_3= trim(stripslashes($_POST['d3_3']));
    $d3_2= trim(stripslashes($_POST['d3_2']));
    $d3_1= trim(stripslashes($_POST['d3_1']));
    $d3_0= trim(stripslashes($_POST['d3_0']));
    $d3_na= trim(stripslashes($_POST['d3_na']));

    $d4_3= trim(stripslashes($_POST['d4_3']));
    $d4_2= trim(stripslashes($_POST['d4_2']));
    $d4_1= trim(stripslashes($_POST['d4_1']));
    $d4_0= trim(stripslashes($_POST['d4_0']));
    $d4_na= trim(stripslashes($_POST['d4_na']));

    $d5_3= trim(stripslashes($_POST['d5_3']));
    $d5_2= trim(stripslashes($_POST['d5_2']));
    $d5_1= trim(stripslashes($_POST['d5_1']));
    $d5_0= trim(stripslashes($_POST['d5_0']));
    $d5_na=trim(stripslashes($_POST['d5_na']));










































    $email = $_POST['mail'];

    //
    $stringa1 = "ATTENZIONE Tutti i campi sono obbligatori!";

    //
    $stringa2 = "l'indirizzo mail non è valido";

    //
    $stringa3 = "la checklist è stata inviata.grazie!";



    // formato del messaggio
    $msgformat = "La persona $nome $cognome ha compilato la seguente cechklist:\n\nnome checklist: $checklist\nstruttura: $struttura \nauditor: $auditor \nverifica del:$verifica \nmail: $email\nrisposte $d1_3 $d1_2 $d1_1 $d1_0 $d1_na \n$d2_3 $d2_2 $d2_1 $d2_0 $d2_na \n$d3_3 $d3_2 $d3_1 $d3_0 $d3_na \n$d4_3 $d4_2 $d4_1 $d4_0



    //
    $i=1;
    while($i<=110)
    {
    if($_POST["note".$i]!='')
    $msgformat.="Note".$i.":".$_POST["note".$i]."";
    $i++;
    }

    ///upload
    $HTTP_POST_FILES['file']




    // definisce i campi obbligatori (da personalizzare con quelli del proprio form)
    if (( $nome == "" ) || ( $cognome == "" ) || ( $email == "" ))




    // popup di errore sui campi obbligatori
    {
    echo "<script language=\"JavaScript\">\n";
    echo "alert(\"$stringa1\");\n";
    echo "javascript:history.go(-1);";
    echo "</script>";
    }

    // controllo del formato della email
    else if (eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$", $email))
    {

    // invia la email a me
    mail($receiverMail, $subject, $msgformat, "From: $email");


    // nelle prossime righe definisco se voglio un semplice popup che avvisa l'utente che il messaggio è stato inviato (OPZIONE1) e che lo fa ritornare automaticamente alla pagina dove ha compilato il form

    // OPPURE

    // se ridirezionarlo verso una pagina web specifica (OPZIONE2)


    // OPZIONE1:
    // popup di messaggio inviato e ritorno alla pagina precedente
    // decommentare $stringa3
    // commentare tutto se si usa OPZIONE2 (per commentare usare /* all'inizio e */ alla fine delle righe da commentare)

    echo "<script language=\"JavaScript\">\n";
    echo "alert(\"$stringa3\");\n";
    echo "javascript:history.go(-1);";
    echo "</script>";
    }

    // OPZIONE2:
    // popup di messaggio inviato e ridirezionamento ad una pagina web
    // decommentare $redirect
    // commentare tutto se si usa OPZIONE1 (per commentare usare /* all'inizio e */ alla fine delle righe da commentare)

    /* echo "<script language=\"JavaScript\">\n";
    echo "window.location.href=(\"$redirect\");\n";
    echo "</script>";
    }
    */

    // popup di errore se fallisce il controllo formato email
    else
    {
    echo "<script language=\"JavaScript\">\n";
    echo "alert(\"$stringa2\");\n";
    echo "javascript:history.go(-1);";
    echo "</script>";
    }
    ?>

  3. #3
    Utente di HTML.it L'avatar di brodik
    Registrato dal
    Jan 2009
    Messaggi
    765
    guarda l'esempio che ho postato qua..
    http://forum.html.it/forum/showthrea...readid=1423111
    eXvision

  4. #4
    quale codice devo scrivere?

  5. #5
    io ho trovato questo codice ma mi va in conflitto con il bottone invia ke ho per far inviare il form,quando premo invia il form me lo manda ma il file nn lo manda,io voglio ke i file allegati dagli utenti mi arrivano allegati per mail...devo inserire semplicemente un codice in un ciclo vero?


    if ($HTTP_POST_VARS['submit']) {
    print_r($HTTP_POST_FILES);
    if (!is_uploaded_file($HTTP_POST_FILES['file']['tmp_name'])) {
    $error = "You did not upload a file!";
    unlink($HTTP_POST_FILES['file']['tmp_name']);
    // assign error message, remove uploaded file, redisplay form.
    } else {
    //a file was uploaded
    $maxfilesize=102400;
    if ($HTTP_POST_FILES['file']['size'] > $maxfilesize) {
    $error = "file is too large";
    unlink($HTTP_POST_FILES['file']['tmp_name']);
    // assign error message, remove uploaded file, redisplay form.
    } else {
    if ($HTTP_POST_FILES['file']['type'] != "image/gif" AND $HTTP_POST_FILES['file']['type'] != "image/pjpeg") {
    $error = "This file type is not allowed";
    unlink($HTTP_POST_FILES['file']['tmp_name']);
    // assign error message, remove uploaded file, redisplay form.
    } else {
    //File has passed all validation, copy it to the final destination and remove the temporary file:
    copy($HTTP_POST_FILES['file']['tmp_name'],"/finallocation/".$HTTP_POST_FILES['file']['name']);
    unlink($HTTP_POST_FILES['file']['tmp_name']);
    print "File has been successfully uploaded!";
    exit;
    }
    }
    }
    }

  6. #6
    Utente di HTML.it L'avatar di brodik
    Registrato dal
    Jan 2009
    Messaggi
    765
    quello script è un po' vecchio...

    allora, per caricare un file, devi aggiungere come attributo del tag form enctype="multipart/form-data"

    nella pagina a cui invii il form aggiungi, per recuperare il file caricato

    Codice PHP:
    if(isset($_FILES['file'])){//se un file è stato selezionato, sostituisci 'file' con il nome del tuo campo file

        
    $target "uploads/".basename($_FILES['file']['name']);//'uploads' è la cartella in cui verranno caricati i files... creala se non esiste già..

        
    if(move_uploaded_file($_FILES['file']['tmp_name'], $target)){//muovi il file caricato dalla cartella temporanea alla cartella uploads

    //ora nella cartella uploads è presente il file caricato dall'utente
        
    }else{
    //errore durante lo spostamento del file dalla cartella tmp a uploads
        
    }
    }else{
    // nessun file selezionato per l'upload

    eXvision

  7. #7
    ok questo codice va inserito come un nuovo ciclo? e la cartella upload la devo creare sul mio spazio web giusto?

  8. #8
    si è proprio cosi,ho creato un nuovo ciclo sullo script.php e fatta la cartella sul webserver e di fatto mi arrivano la dentro i file.....posso far in modo ke l'utenti selezionano più file e li caricano senza ke devo creare altri campi type file?

  9. #9
    ok tutto perfetto i file sembrano arrivare...xò io avevo kiesto ke invece di arrivare sulla cartella del server mi arrivassero in allegato sulla mia mail insieme a tutti gli altri campi del form text,radio button ecc....è possibile???????????

  10. #10
    Utente di HTML.it L'avatar di brodik
    Registrato dal
    Jan 2009
    Messaggi
    765
    eXvision

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 © 2025 vBulletin Solutions, Inc. All rights reserved.