-
problema phpmailer
ciao a tuti io stavo cercando di utilizzare phpmailer per il mio sito ma mi dà errore
The following From address failed: patriziogrande@yahoo.com Si è verificato un errore nell'invio della mail
il problema non dovrebbe essere nei file ma non so in cosa forse l' SMTP qui posto il form da cui prendo i dati
Codice HTML:
<html>
<form action="riuscito.php" method="post" enctype="multipart/form-data" target="_blank">
Game Name: <br />
<input type='text' name='name' /><br />
<br />
Descrizione<br />
<textarea name='desc' style='width: 300px;'></textarea><br />
Category: <br />
<select name='cat'>
<option value="giochi di azione">giochi di azione</option><option value="giochi di volo">giochi di volo</option><option value="giochi classici" selected>giochi classici</option><option value="giochi al femminile">giochi al femminile</option><option value="giochi per bambini">giochi per bambini</option><option value="giochi di guerra">giochi di guerra</option><option value="giochi di auto">giochi di auto</option><option value="giochi di strategia">giochi di strategia</option><option value="giochi sparatutto">giochi sparatutto</option><option value="giochi di sport">giochi di sport</option><option value="giochi di moto">giochi di moto</option><option value="giochi di lotta">giochi di lotta</option><option value="giochi di carte">giochi di carte</option><option value="giochi di abilita">giochi di abilità</option>
</select><br />
file gioco (.swf.dcr. ...)<br />
<input type="file" name="swf" /><br />
Immagine:<br />
<input type='file' name='thumb' />
<br />
Nome del creatore: <br />
<input type='text' name='authorname' /><br />
<br />
E-mail: <br />
<input type='text' name='mail' /><br />
<br />
<button type="submit">Invia</button>
<br />
</form>
</html>
e qui i codice di php mailer:
Codice PHP:
<?php
$email ="crashsito64@yahoo.it";
$nome = $_POST['name'];
$descrizione= $_POST['desc'];
$categoria= $_POST['cat'];
$file= $_FILES['swf'];
$immagine=$_FILES['thumb'];
$creatore= $_POST['authorname'];
$mittente= $_POST['mail'];
$oggetto= "gioco";
$bodyhtml = "Categoria: $categoria<br>";
$bodyhtml = "Descrizione: $descrizione<br>";
$bodyhtml = "Autore: $creatore<br><br>";
$bodyhtml = "-------------------------<br>";
$bodyhtml = "Inviata da: $nome<br>";
$bodyhtml = "email: $mittente<br>";
$bodytxt =str_replace ("<br>", "\\n",$bodyhtml);
$bodytxt =strip_tags($bodytxt);
require_once("class.phpmailer.php");
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->Host = "mail.yahoo.com";
$mail->From = $mittente;
$mail->AddAddress("$email");
$mail->IsHTML(true);
$mail->Subject = $oggetto;
$mail->Body = $bodyhtml;
$mail->AltBody = $bodytxt;
$mail->AddAttachment();
if(!$mail->Send()){
echo "Si è verificato un errore nell'invio della mail"; }
else{
echo "Mail inviata con successo"; }
?>
deto qauesto dato che io ho studiatop php 5.0 e non mi sono mai accorto che esistessero cose di questo genere come -> o \\n eccetera qualcuno sa dirmi cosa sono e dove studiarle?
Grazie
-
AlterVista non permette di instaurare connessioni TCP verso porte differenti dalla 80 e 443.
-
e allora come devo fare per potere fare inviare i dati presi dal form alla mia mail nnsi può fare in qualche modo sempre utilizzando phpmailer e se proprio non si può qualcos' altro?
-
Puoi usare la funzione mail.
-
allora ho ftt il codice ma nn mi va dice che c'è un errore potete aiutarmi penso sia sbagliato l'array ma nn sapevo come dovevo fare per portare quella struttura nella mail
Codice PHP:
<?php
$email ="crashsito64@yahoo.it";
$messaggio = $_POST['name'];
$descrizione= $_POST['desc'];
$categoria= $_POST['cat'];
$file= $_FILES['swf'];
$immagine=$_FILES['thumb'];
$creatore= $_POST['authorname'];
$mittente= $_POST['mail'];
$oggetto= "gioco";
$contenuto=array ('Categoria: $categoria<br>', 'Descrizione: $descrizione<br>','Autore: $creatore<br><br>', '<hr>', 'Inviata da: $nome<br>','email: $mittente<br>');
mail($email,$oggetto,$contenuto,$mittente);
if(mail($email,$oggetto,$contenuto,$mittente)){
echo "Mail inviata con successo"; }
else{
echo "Si è verificato un errore nell'invio della mail";
}
?>
-
Se richiami due volte la funzione riceverai due mail, inoltre il contenuto deve essere una stringa, non un array.
-
okkei ma tutto quel contenuto come lo faccio entrare in una stringa???
-
Lo metti tutto nella medesima stringa anziché spezzettarla e inserire i pezzettini in un array, qual'è il problema?
-
hai ragione nn c' era problema avevo il dubbio che nn si potesse fare cmnq nn va mi arriva l' email mi ariva questo
Categoria: giochi classici<br>Descrizione: <br>Autore: <br><br><hr>Inviata da: <br>email: patriziogrande@yahoo.com<br>,Array,Array
dove array dovrebbero essere i file ma i medesimi non mi arrivano come devo fare quì riposto i lcodice
Codice PHP:
<?php
$email ="crashsito64@yahoo.it";
$messaggio = $_POST['name'];
$descrizione= $_POST['desc'];
$categoria= $_POST['cat'];
$file= $_FILES['swf'];
$immagine=$_FILES['thumb'];
$creatore= $_POST['authorname'];
$mittente= $_POST['mail'];
$oggetto= "gioco";
$contenuto="Categoria: $categoria<br>Descrizione: $descrizione<br>Autore: $creatore<br><br><hr>Inviata da: $nome<br>email: $mittente<br>,$file,$immagine";
if(mail($email,$oggetto,$contenuto,$mittente)){
echo "Mail inviata con successo"; }
else{
echo "Si è verificato un errore nell'invio della mail";
}
?>
-
Se devi inviare anche allegati la questione è più complessa, cerca qualche guida in rete.
-