![]() |
![]() |
|
| Condividi questo contenuto nei Social Network: |
|
Tweet |
|
|
|
Ti stiamo aspettando: Registrati subito e gratis. Entra a far parte di una delle comunità più attive in Italia. Se hai dimenticato i tuoi dati li puoi recuperare subito. |
||||
|
|||||||||
|
|
LinkBack | Strumenti di discussione |
|
|
#1 (permalink) |
|
User Newbie
Data di registrazione: Dec 2009
Messaggi: 5
|
Upload di foto in pagina web
Salve, sto' disegnando un sito internet ed ho questo problema: Ho un form dove l'utente si iscrive, inserisce i suoi dati e le sue foto in un form e alla fine le invia. Tutto bene fino a quando inserisce i dati, il problema sorge quando deve inserire le foto; non so come fare uno script che permetta di fare l' upload delle foto e di mandarle alla mia mail insieme ai dati. Premetto che non sono esperto in PHP, mi limito a modificare i vari script che trovo in giro ...Sarei grato se qualcuno mi possa spiegare (o mandare uno script ) per inserire al mio form le foto. Grazie in anticipo.
|
|
|
|
|
|
|
|
#2 (permalink) |
|
User
Data di registrazione: Apr 2005
Ubicazione: Bergamo
Messaggi: 125
|
Il form di invio deve contenere
Codice HTML:
<form method="post" action="send.php" enctype="multipart/form-data"> <!-- Vari campi --> Immagine <input class="camp" name="file_send" type="file" /> <input type="submit" value=" Invio " /> </form> Codice PHP:
Codice PHP:
|
|
|
|
|
|
#3 (permalink) |
|
User Newbie
Data di registrazione: Dec 2009
Messaggi: 5
|
Grazie Linus, a vedere così sembra uno script ben fatto e completo, però quello che serve a me è uno script per mandare più files di foto come allegato, che arrivino alla mia e-mail e per quello che ho potuto vedere non sono ruscito a capire se lo script serve per mandare e-mail con allegati multipli.
Di seguito inserisco uno script che stò cercando di modificare, tutto funziona solo non so come aggiungere altri allegati allo stesso script (con questo ne manda solo uno...). Se qualcuno può aiutarmi sarei molto grato.. ![]() <?php // Recupero il valore dei campi del form $destinatario = $_POST['destinatario']; $mittente = $_POST['mittente']; $oggetto = $_POST['oggetto']; $messaggio = " nombre: $nombre \n apellido: $apellido \n apodo: $apodo \n edad: $edad \n dia: $dia \n mes: $mes \n mittente: $mittente \n profesion: $profesion \n estado: $estado \n hijos: $hijos \n num: $num \n mujer: $numhembra \n varon: $numvaron \n estatura: $estatura \n peso: $peso \n cabellos: $cabellos \n ojos: $ojos \n descripciones: $descripciones \n "; // Valorizzo le variabili relative all'allegato $allegato = $_FILES['allegato']['tmp_name']; $allegato_type = $_FILES['allegato']['type']; $allegato_name = $_FILES['allegato']['name']; // Creo 2 variabili che riempirò più avanti... $headers = "From: " . $mittente; $msg = ""; // Verifico se il file è stato caricato correttamente via HTTP // In caso affermativo proseguo nel lavoro... if (is_uploaded_file($allegato2)) { // Apro e leggo il file allegato $file = fopen($allegato,'rb'); $data = fread($file, filesize($allegato)); fclose($file); // Adatto il file al formato MIME base64 usando base64_encode $data = chunk_split(base64_encode($data)); // Genero il "separatore" // Serve per dividere, appunto, le varie parti del messaggio. // Nel nostro caso separerà la parte testuale dall'allegato $semi_rand = md5(time()); $mime_boundary = "==Multipart_Boundary_x{$semi_rand}x"; // Aggiungo le intestazioni necessarie per l'allegato $headers .= "\nMIME-Version: 1.0\n"; $headers .= "Content-Type: multipart/mixed;\n"; $headers .= " boundary=\"{$mime_boundary}\""; // Definisco il tipo di messaggio (MIME/multi-part) $msg .= "This is a multi-part message in MIME format.\n\n"; // Metto il separatore $msg .= "--{$mime_boundary}\n"; // Questa è la parte "testuale" del messaggio $msg .= "Content-Type: text/plain; charset=\"iso-8859-1\"\n"; $msg .= "Content-Transfer-Encoding: 7bit\n\n"; $msg .= $messaggio . "\n\n"; // Metto il separatore $msg .= "--{$mime_boundary}\n"; // Aggiungo l'allegato al messaggio $msg .= "Content-Disposition: attachment;\n"; $msg .= " filename=\"{$allegato_name}\"\n"; $msg .= "Content-Transfer-Encoding: base64\n\n"; $msg .= $data . "\n\n"; // chiudo con il separatore $msg .= "--{$mime_boundary}--\n"; } else { $msg = $messaggio; } // Invio la mail if (mail($destinatario, $oggetto, $msg, $headers)) { echo "<p>Mail inviata con successo!</p>"; } else { echo "<p>Errore!</p>"; } ?> |
|
|
|