Visualizzazione dei risultati da 1 a 8 su 8

Discussione: Problema invio email

  1. #1

    Problema invio email

    Ciao a tutti ho un problema, ho un form per spedire email sul mio sito, quindi index.php e mail.php dove c'è il codice per l'invio, fino a ieri andava alla perfezione ora ha deciso di non inviare più le email, il sito è hostato su aruba ho provato a caricare gli stessi file su altervista per vedere se era un problema di codice ma lì andava tutto bene, quale può essere il problema? Cosa può essere successo al sito da un giorno all'altro? mi affido alla vostra esperienza grazie!

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,445
    Più che alla nostra esperienza dovresti affidarti al servizio di assistenza di Aruba, solo loro possono sapere cosa è cambiato sui loro server.
    Magari hanno inibito l'invio delle email tramite la funzione mail() e devi impostare manualmente i dati smtp e di autenticazione, ma ripeto, devi chiedere direttamente ad aruba.

  3. #3
    Ah capito, visto che non saprei da dove partire a spiegargli, cosa gli dovrei dire?
    Grazie per avermi risposto comunque.

  4. #4
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,445
    Chiedigli se hanno fatto modifiche alla configurazione del php presente sul server che ospita il tuo sito, tali da inibire l'utilizzo della funzione mail() con autenticazione e smtp standard (ammesso che tu usi la funzione mail() )

  5. #5
    mi son dimenticato di dire che è in jquery, non so se cambia qualcosa, questi sono i codici:
    jquery_mail.js
    codice:
     $(document).ready(function(){
    	$("#invia").click(function(){
     
    	//Recuperiamo tutte le variabili
    		var valid = '';
    		var isr = ' è richiesto.';
    		var name = $("#nome").val();
    		var mail = $("#email").val();
    		var subject = $("#oggetto").val();
    		var messaggio = $("#messaggio").val();
     
    	//Eseguiamo una serie di controlli
    		if (name.length<1) {
    			valid += '
     
    Un nome valido'+isr;
    		}
    		if (!mail.match(/^([a-z0-9._-]+@[a-z0-9._-]+\.[a-z]{2,4}$)/i)) {
    			valid += '
     
    Un indirizzo e-mail valido'+isr;
    		}
    		if (subject.length<1) {
    			valid += '
     
    Un oggetto valido'+isr;
    		}
    	//Se i controlli non vengono superati, appare il messaggio di errore.
    		if (valid!='') {
    			$("#risposta").fadeIn("slow");
    			$("#risposta").html("
     
    Errore:
     
    "+valid);
    			$("#risposta").css("background-color","#ffc0c0");
    		}
    		//Se i controlli vengono superati, compare un messaggio di invio in corso
    		else {
    			var datastr ='name=' + name + '&mail=' + mail + '&subject=' + subject + '&messaggio=' + encodeURIComponent(messaggio);
    			$("#risposta").css("display", "block");
    			$("#risposta").css("background-color","#FFFFA0");
    			$("#risposta").html("
     
    Invio del messaggio in corso..
     
    ");
    			$("#risposta").fadeIn("slow");
    			setTimeout("send('"+datastr+"')",2000);
    		}
    		return false;
    	});
    });
    //Creazione della funzione di invio. Si baserà sul nostro file php "mail.php".
    function send(datastr){
    	$.ajax({
    		type: "POST",
    		url: "mail.php",
    		data: datastr,
    		cache: false,
    		success: function(html){
    		$("#risposta").fadeIn("slow");
    		$("#risposta").html(html);
    		$("#risposta").css("background-color","#e1ffc0");
    		setTimeout('$("#risposta").fadeOut("slow")',2000);
    	}
    	});
    }
    mail.php
    Codice PHP:
    < ?php
    //Recuperiamo tutte le variabili
        
    $mail $_POST['mail'];
        
    $name $_POST['name'];
        
    $subject $_POST['subject'];
        
    $text $_POST['messaggio'];
        
    $ip $_SERVER['REMOTE_ADDR'];
     
    //Qui andrà inserito il tuo indirizzo e-mail
    $to "indirizzo@email.com";
     
    //Creazione del mesaggio da inviare
    $message "Hai ricevuto una e-mail da: ".$name.", ".$mail.".
    "
    ;
    $message .= "Messaggio: 
    "
    .$text."
     
    "
    ;
    $message .= "IP: ".$ip."
    "
    ;
    $headers "From: $mail \n";
    $headers .= "Reply-To: $mail \n";
    $headers .= "MIME-Version: 1.0 \n";
    $headers .= "Content-Type: text/html; charset=ISO-8859-1 \n";
     
    //Se l'e-mail viene spedita correttamente, compare un messaggio di avvenuto invio
     
    if(mail($to$subject,$message$headers)){
        echo 
    "
     
    Messaggio inviato con successo
     
    "
    ;
    }
    //Altrimenti un messaggio di errore
    else{
        echo 
    "
     
    Ci sono stati degli errori nell'invio della e-mail.
     
    "
    ;
    }
    ?&
    gt

  6. #6
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,445
    Riformatta il codice andando a capo a fine riga e mantenendo l'indentazione, così il codice diventa leggibile.

  7. #7
    Fatto scusa

  8. #8
    Ho contattato aruba ed ha sistemato, grazie per l'aiuto

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