Segnala

Convertire file Flash in PHP

Fai una domanda mistergiac 1Posti mercoledì 18 dicembre 2013Data di registrazione mercoledì 18 dicembre 2013 Ultimo intervento - Ultima risposta 30 gen 2017 alle 17:44 da SuperDev88
Ciao a tutti, sono giacomo, vi pregherei di un aiuto; Premesso che dipingo ed ho pochissimo tempo da dedicare alla programmazione, gradirei la vostra comprensione (della mia difficolta a riprenderla dopo il tempo trascorso; il mio probblema è il seguente: un 3 anni addietro ero riuscito a farmi arrivare dentro il mio indirizzo e-mail (all'interno del mio sito)il contenuto di un form (campi testo dentro una movie clip) (la variabile passava col metodo POST da flash a php); Ho cambiato provider, sono passato ad 1and1 (ottimo), ma non mi funziona più l'invio della e-mail; Di seguito vi rendo noto i due codici (FLASH e PHP, sintetizzati, senza i controlli d'inserimento, nome, telefono ecc.):
//---invio del modulo da flash------\\
this.Start_BT.onRelease = function() {

var sendMail:LoadVars = new LoadVars();
sendMail.nome = nome.text;
sendMail.citta = citta.text;
sendMail.mittente = mail.text;
sendMail.richiesta = testo.text;
sendMail.telef = telefono.text;

sendMail.sendAndLoad('InviaEmail.php',sendMail,'POST');
}
;
<?
$a = "info@giacomodandrea.it";
$oggetto = "Msg dal Mio Sito";
$messaggio. = "Telefono: ".$_POST['telef']."\n";
$messaggio. = "mail Mittente: ".$_POST['mittente']."\n";
$messaggio. = "Nome: ".$_POST['nome']."\n";
$messaggio. = "Citta': ".$_POST['citta']."\n";
$messaggio. = "Testo Msg: ".$_POST['richiesta']."\n";
print $a;
print $oggetto;
print $messaggio;
mail($a, $oggetto, $messaggio);
?>
Altro... 
Utile
+0
moins plus
Ciao Giacomo, hai fatto benissimo a pubblicare il codice sorgente, in questo modo è molto più semplice aiutarti.

Il problema è che la funzione di PHP "mail" (ultima riga del tuo codice) non è supportata da tutti gli host ed è considerata deprecata, insomma è sconsigliato l'utilizzo per questioni di sicurezza. Questo potrebbe essere il motivo dell'errore.

Per risolverlo puoi usare la libreria gratuita chiamata PHPMailer, scaricabile gratuitamente da qui https://sourceforge.net/projects/phpmailer/

Questo è un codice di esempio della libreria:
<?php
require 'PHPMailerAutoload.php';

$mail = new PHPMailer;

//$mail->SMTPDebug = 3;                               // Enable verbose debug output

$mail->isSMTP();                                      // Set mailer to use SMTP
$mail->Host = 'smtp1.example.com;smtp2.example.com';  // Specify main and backup SMTP servers
$mail->SMTPAuth = true;                               // Enable SMTP authentication
$mail->Username = 'user@example.com';                 // SMTP username
$mail->Password = 'secret';                           // SMTP password
$mail->SMTPSecure = 'tls';                            // Enable TLS encryption, `ssl` also accepted
$mail->Port = 587;                                    // TCP port to connect to

$mail->setFrom('from@example.com', 'Mailer');
$mail->addAddress('joe@example.net', 'Joe User');     // Add a recipient
$mail->addAddress('ellen@example.com');               // Name is optional
$mail->addReplyTo('info@example.com', 'Information');
$mail->addCC('cc@example.com');
$mail->addBCC('bcc@example.com');

$mail->addAttachment('/var/tmp/file.tar.gz');         // Add attachments
$mail->addAttachment('/tmp/image.jpg', 'new.jpg');    // Optional name
$mail->isHTML(true);                                  // Set email format to HTML

$mail->Subject = 'Here is the subject';
$mail->Body    = 'This is the HTML message body <b>in bold!</b>';
$mail->AltBody = 'This is the body in plain text for non-HTML mail clients';

if(!$mail->send()) {
    echo 'Message could not be sent.';
    echo 'Mailer Error: ' . $mail->ErrorInfo;
} else {
    echo 'Message has been sent';
}


Ti basterà modificare il $mail->Body inserendo il tuo corpo del messaggio. Per qualsiasi problema non esitare a chiedere, programmo in PHP da quando avevo 15 anni e ho anche un sito di programmazione chiamato ImparareAProgrammare.it, quindi ti aiuto molto volentieri :)
Dai la tua opinione

Un utente registrato ottiene più risposte rispetto ad uno anonimo.

Un utente registrato ha un seguito (follow-up) dettagliato di tutte le sue domande.

Un utente registrato ha accesso a delle opzioni aggiuntive.

Non sei ancora un membro?

Registrati, richiede meno di un minuto ed è gratis!