Fonction mail php chez WEBSITE.ORG
salut,
j'ai un grand problème,alors ,je suis débutant en php et je veut savoir comment activer (quel serveur mail utiliser...) et commet utilise la fonction mail.
mon site et héberger chez WEBSITE.ORG
merci d'avance
j'ai un grand problème,alors ,je suis débutant en php et je veut savoir comment activer (quel serveur mail utiliser...) et commet utilise la fonction mail.
mon site et héberger chez WEBSITE.ORG
merci d'avance
6 réponses
-
pas de solution?
-
merci :)
-
salut,
La plupart des hébergeurs ont la fonction activée, le mieux serait de poser directement la question à ton hébergeur.
As tu testé en local avant ? si oui et que ça marche sur ton ordi alors contact ton hébergeur :) -
salut et merci a vous,
mon hébergeur nous fournis un script en php pour l'envoi du mail :
-----------------------------------------------------------------------------------------------
<?php
// ********************************************************************************************************************************
// smtp mail Funktion for kilu user, modifiziert by das Ass 22.03.2008 http://dasass.kilu.de/
// ********************************************************************************************************************************
$name = "Absendername"; // optional
$email = "Absender Mail-Adresse";
$smtphost = 'mail.gmx.net';
$smtpuser = 'Kundennummer';
$smtppass = 'Passwort';
$mailfrom = 'eigene Mail-Adresse';
if(strtoupper(substr(PHP_OS,0,3)=='WIN')) {
$eol="\r\n";
}
elseif (strtoupper(substr(PHP_OS,0,3)=='MAC')) {
$eol="\r";
}
else {
$eol="\n";
}
function mailserverparse( $socket, $response ) {
$server_response = null;
while( substr( $server_response, 3, 1 ) != ' ' )
if( !( $server_response = fgets( $socket, 256 ) ) )
trigger_error( 'can not get mail server response codes' );
if( !( substr( $server_response, 0, 3 ) == $response ) )
trigger_error( 'ran into problems sending mail. response: '.$server_response );
return true;
}
function sendmail( $to, $subject, $message, $headers ) {
global $smtphost, $smtpuser, $smtppass, $mailfrom, $eol;
if( !$socket = @fsockopen( $smtphost, 25, $errno, $errstr, 20 ) )
trigger_error( "Could not connect to smtp host: {$errno}:{$errstr}" );
if( trim( $subject ) == null )
trigger_error( 'no email Subject specified' );
$message = preg_replace( "#(?<!\r)\n#si", "\r\n", $message );
if( trim( $message ) == null )
trigger_error( 'message was blank' );
if( !preg_match( '#^from:#i', $headers ) && empty( $mailfrom ) )
trigger_error( 'no FROM header set' );
mailserverparse( $socket, '220' );
fputs( $socket, "HELO ".$smtphost.$eol );
mailserverparse( $socket, '250' );
if( !empty( $smtpuser ) && !empty( $smtppass ) ) {
fputs( $socket, "AUTH LOGIN".$eol );
mailserverparse($socket, '334' );
fputs( $socket, base64_encode( $smtpuser ).$eol );
mailserverparse($socket, '334' );
fputs( $socket, base64_encode( $smtppass ).$eol );
mailserverparse( $socket, '235' );
}
if( $headers != null ) {
$headers = rtrim( $headers );
$headers = preg_replace( '#(?<!\r)\n#si', $eol, $headers );
$header_array = explode( $eol, $headers );
$headers = null;
$cc = null;
$bcc = null;
foreach( $header_array as $header ) {
if ( preg_match( '#^cc:#si', $header ) )
$cc = preg_replace('#^cc:(.*)#si', '\1', $header);
elseif( preg_match( '#^bcc:#si', $header ) ) {
$bcc = preg_replace('#^bcc:(.*)#si', '\1', $header);
$header = null;
}
$headers .= ( $header != null )?$header.$eol:null;
}
$headers = rtrim( $headers );
$cc = explode( ', ', $cc );
$bcc = explode( ', ', $bcc );
}
fputs( $socket, "MAIL FROM: <".$mailfrom.">".$eol );
mailserverparse( $socket, '250' );
$to = empty( $to )?'Undisclosed-recipients:;':trim( $to );
if( preg_match( '#[^ ]+\@[^ ]+#', $to ) ) {
fputs( $socket, "RCPT TO: ".$to.$eol );
mailserverparse( $socket, '250' );
}
if( is_array( $bcc ) )
foreach( $bcc as $address ) {
$address = trim( $address );
if( preg_match( '#[^ ]+\@[^ ]+#', $address ) ) {
fputs( $socket, "RCPT TO: ".$address.$eol );
mailserverparse( $socket, '250' );
}
}
if( is_array( $cc ) )
foreach( $cc as $address ) {
$address = trim( $address );
if( preg_match( '#[^ ]+\@[^ ]+#', $address ) ) {
fputs( $socket, "RCPT TO: ".$address.$eol );
mailserverparse( $socket, '250' );
}
}
fputs( $socket, "DATA".$eol );
mailserverparse( $socket, '354' );
fputs( $socket, "Subject: ".$subject.$eol );
fputs( $socket, "To: ".$to.$eol );
fputs( $socket, $headers.$eol.$eol );
fputs( $socket, $message.$eol );
fputs( $socket, ".".$eol );
mailserverparse( $socket, '250' );
fputs( $socket, "QUIT".$eol );
fclose( $socket );
return true;
}
// Funktionsaufruf zum Senden
$headers ="From: ".(($name)?$name:"Absender")." <".$email.">".$eol;
sendmail( $mailfrom, $subject, $comment, $headers );
?>
-----------------------------------------------------------------------------------------------
merci d'avance-
coté variables j'ai mis:
$email = "Absender Mail-Adresse"; || mon adresse email (gmail) .
$smtphost = 'mail.gmx.net'; || smtp.gmail.com .
$smtpuser = 'Kundennummer'; || mon identifiant pour "gmail" .
$smtppass = 'Passwort'; || mon mot passe pour mon compte mail (gmail) .
$mailfrom = 'eigene Mail-Adresse'; || l'adresse mail du destinataire .
-
-
re,
c'est quoi exactement la question là ? si c'est comment utiliser ce script alors je te répond qu'il manque tout l'html.
trop long à expliquer je te conseillerai d'aller faire un tour sur la toile pour chercher un bon script/tuto afin que tu comprennes un peu à quoi tu as à faire et si tu as un peu de sous, d'excellent tutos sur l'envoi de mail son disponible sur tuto.com.
Cdt -
c'est juste le script php que j'ai mis
merci quand même