PHP : un mail qui veut pas venir
Résolu
new morning
Messages postés
133
Statut
Membre
-
new morning Messages postés 133 Statut Membre -
new morning Messages postés 133 Statut Membre -
Bonjour,
J'ai pas mal utilisé le script de mail qui est proposé ici :
http://www.commentcamarche.net/forum/profil SyGEN
Il marchaiit très bien jusqu'à ce que je veuille le peaufiner un peu dans le script qui va suivre. Résultat : aucun message d'erreur, mais aucun message tout court ! pour tester le fichier directement, cliquez ici : http://francafrique.shadow-corp.org/backup/filesender.php
Vous verrez que les echos se font sans pb, et vous ne le verrez pas mais je vous garanti que le mail n'arrive pas !
Le code non paramétré :
J'ai pas mal utilisé le script de mail qui est proposé ici :
http://www.commentcamarche.net/forum/profil SyGEN
Il marchaiit très bien jusqu'à ce que je veuille le peaufiner un peu dans le script qui va suivre. Résultat : aucun message d'erreur, mais aucun message tout court ! pour tester le fichier directement, cliquez ici : http://francafrique.shadow-corp.org/backup/filesender.php
Vous verrez que les echos se font sans pb, et vous ne le verrez pas mais je vous garanti que le mail n'arrive pas !
Le code non paramétré :
<?php
/*
Backup whole website and database (optional)
then send by email script
*/
// ******************************
// setup variables, edit below
// ******************************
$path = '..';// Which directory to backup? Don't add trailing slash
$backup_name = 'monbackup';// backup file name
$split_size = 2 * 1024 * 1024;//In Megabyte
//Important: Gmail doesn't allow attachments more than 10 MB.
$backupdatabase = 'yes'; //Want to backup a database also? 'yes' or 'no'
// configure your database variables below if you want to backup database:
$dbhost = 'localhost'; // Server address of your MySQL Server
$dbuser = 'xxx'; // Username to access MySQL database
$dbpass = 'xxx'; // Password to access MySQL database
$dbname = 'xxx'; // Database Name
$to = 'xxx@xxx.com';// Where to send the emails?
$from = 'backup@xxx.org';// Who should the emails be sent from?
$senddate = date("l j F Y");//Mail date format
$sendsubject = 'This is ' . $split . ' of ' . $senddate;// subject and body of message
//===================================================================================
// ******************************
// Do not Modify below this line!
// ******************************
echo ("<h4><center>Archiving Directory: $path</center></h4> <br>");
// make the archive
system("tar -z -c $path | split -b '$split_size' - $backup_name.");
echo ("<h4><center>Starting Sending Mails ... ... ...</center></h4> <br>");
//Mailer
$i = 'aa';
$j = 0;
while (file_exists($backup_name . "." . $i) )
{
$j++;
rename($backup_name . "." . $i, $backup_name . "." . $i . ".bin") ;
$split = "$backup_name.$i.bin" ;// final name of archive to send : don't change !!!
$mime_boundary = "<<<--==+X[".md5(time())."]";
$headers .= "From: $from\r\n";
$headers .= "To: $to\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: multipart/mixed;\r\n";
$headers .= " boundary=\"".$mime_boundary."\"";
$message .= "main message.\r\n";
$message .= "\r\n";
$message .= "--".$mime_boundary."\r\n";
$message .= "Content-Type: text/plain; charset=\"utf-8\"\r\n";
$message .= "Content-Transfer-Encoding: 7bit\r\n";
$message .= "\r\n";
$message .= $sendsubject;
$message .= "\r\n";
$message .= "--".$mime_boundary."\r\n";
$message .= "Content-Type: application/octet-stream;\r\n";
$message .= " name=\"$split\"\r\n";
$message .= "Content-Transfer-Encoding: base64\r\n";
$message .= "Content-Disposition: attachment;\r\n";
$message .= " filename=\"$split\"\r\n";
$message .= "\r\n";
$myfile = file_get_contents("$split");
$fileContent = chunk_split( base64_encode($myfile) );
$message .= $fileContent;
$message .= "\r\n";
$message .= "--".$mime_boundary."\r\n";
$ok = mail($to, $sendsubject, $message, $headers);
if ($ok) echo ("<h4><center>Just sent $split !</center></h4> <br>"); else echo ("<h4><center>We lost $split backup !</center></h4> <br>");
if(file_exists($split))
{
unlink($split);
}
$i++ ;
}
echo ("<h4><center>Total : $j splits sent for files</center></h4> <br>");
?>
A voir également:
- PHP : un mail qui veut pas venir
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Retour a la ligne php - Forum Webmastering
- Alert php - Forum PHP
- Retour a la ligne php ✓ - Forum PHP