Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    19

    problema con funzione mail

    ciao a tutti,
    ho un problema con la funzione mail, la funzione non ritorna errore, ma la mail non arriva o non viene spedita, cè qualcosa che devo controllare?
    ho letto la pillola e so che bisogna cambiare il file php.ini, ma sto facendo girare il sito in locale (http://localhost/...)
    devo cambiarlo lo stesso?come dovrebbe essere questo file nel mio caso?!

    vi posto il codice, magari cè comunque qualche errore qui, non so...

    Codice PHP:
    <h1>Password lost</h1>
                      
                      <form name="adduser" method="post" action="lostpassword.php">
                          

    Insert your username 

                          <input type="text" name="username" /></p>
                          

    <input type="submit" name="Submit" value="Submit" align="center" /></p>
                       </form>
                       <?       
                      
    //define the receiver of the mail
                      
    $user$_POST['username'];
                      
    $sql"SELECT * FROM user WHERE username='".$user."'";
                      
    $result mysql_query($sql$connection)
                                          or die(
    "Couldn't perform query $sql </br>".mysql_error());
                      
    $row mysql_fetch_array($result);
                      if(
    $row == null){
                          echo 
    "error";
                      }
                      
    $to $row['email'];
                      
    //define the subject of the email
                      
    $subject 'Password';
                      
    //define the message to be sent. Each line should be separated with \n
                      
    $message "This mail is automatically generated.\nThe new password for the SOUND OFF Forum is password, you should change this password once logged in into the system\r\n";
                      
    //define the headers we want passed. Note that they are separated with \r\n
                      
    $headers "From: admin-sound off-forum\r\nDo not reply to this email";
                      
    //send the email
                      //$mail_sent = mail( $to, $subject, $message, $headers );
                      
    $mail_sent mail$to$subject$message );
                      
    //if the message is sent successfully print "Mail sent". Otherwise print "Mail failed" 
                      //echo $mail_sent ? "Mail sent" : "Mail failed";
                      
                      //set the default password as the password of the user
                      
    $cryptedpwd=md5('password');
                      
    $sql="UPDATE user SET password='".$cryptedpwd."' WHERE username= '".$user."'";
                      
    $result mysql_query($sql$connection)
                                          or die(
    "Couldn't perform query $sql </br>".mysql_error());
                      
                      if (
    $mail_sent) {
                          echo 
    "

    Message successfully sent to"
    .$row['email']."</p>";
                      } else {
                      echo 
    "

    Message delivery failed...</p>"
    ;
                      }
                    }
                    if (
    $lostinfo=="username"){
                    
    ?>
    spero mi sappiate dare qualche dritta perchè mi sono bloccata su questa e un altra cosa e non riesco proprio ad andare avanti!

  2. #2
    Ciao, il codice mi sembra giusto, dai un'occhiata alla configuarazione del php anche se sei in locale
    =======================
    http://www.abidibo.net

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    19
    grazie per la risposta...stavo impazzendo...
    però scusa ma devo chiederti di essere un po più preciso perchè è la prima volta che faccio qualcosa in php!!!
    guardo il file php.ini?
    come dovrebbe essere?

  4. #4
    Dipende se usi windows o Linux... comunque devi configurare il file php.ini.
    Siccome non sono un grande sistemista per evitare di dire caxxate ti rimando a questa pagina dove trovi quello che ti interessa. Ciao!
    =======================
    http://www.abidibo.net

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    19
    uso windows...il file php.ini sembra configurato correttamente per quel che ho potuto leggere...ma niente...

    questo è quanto!
    Codice PHP:
    [mail function]
    ; For 
    Win32 only.
    SMTP localhost
    smtp_port 
    25

    ; For Win32 only.
    ;
    sendmail_from = [email]dc292@exac.uk[/email]

    ; For 
    Unix only.  You may supply arguments as well (default: "sendmail -t -i").
    ;
    sendmail_path 
    localhost l'ho lasciato visto che lo sto usando in locale
    mentre in sendmail_path non ho ben capito cosa devo mettere..

  6. #6
    Allora il problema potrebbe essere che forse in winzoz non esiste un mail server installato di default, quindi ovviamente la funzione mail() non puo' funzionare...
    Se cosi fosse le soluzioni sono:
    - la migliore: lascia perdere winzoz ed usa un OS serio
    - installa un server di posta SMTP cercando in rete, ne trovi di gratuiti. http://www.argosoft.com/rootpages/
    Altrimenti non saprei proprio, mi spiace.
    Ciao!
    =======================
    http://www.abidibo.net

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.