Avatar billede Kast20 Seniormester
25. oktober 2013 - 16:19 Der er 4 kommentarer og
1 løsning

Mail.php der mailer en MySQL database tabel

Hej,

Jeg kunne godt bruge lidt hjælp til at lave en mail.php fil der vedhæfter en udvalgt tabel fra en udvalgt MySQL database til en mail og derefter sender den til en emailadresse. Tanken er så at filen skal køres på et udvalgt tidspunkt (kl. 23.59) - evt. ved hjælp af et cron-job.

Jeg har forsøgt at starte lidt ud men har brug for hjælp til at komme videre. Det er især det at forbinde til databasen og få tabellen vedhæftet i mailen der volder problemer:

------------------------------------------------------------

$host = "-"; // Host name
$username = "-"; // Mysql username
$password = "-"; // Mysql password
$db_name = "-"; // Database name
$tbl_name = "-"; // Table name

// Forbind til server og vælg database
mysql_connect("$host", "$username", "$password")or die("Cannot connect");
mysql_select_db("$db_name")or die("Cannot select DB");

// Gem $tbl_name som vedhæftet fil (excel) til inkludering i mailen

/***** OPSÆTNING AF MAILEN ******/

// Flere modtagere
$to  = 'navn@domain.dk';

// Emne
$subject = 'Dagens udtræk';

// Besked
$message = '
<html>
<head>
  <title>Dagens udtræk</title>
</head>
<body>
  <p>Vedhæftet er tabellen!</p>
</body>
</html>
';

// Sæt Content-type for at sende HTML mail
$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";

// Yderligere headers
$headers .= 'From: Domain <no-reply@domain.dk>' . "\r\n";
$headers .= "Reply-To: no-reply@domain.dk\r\n";
$headers .= "Return-Path: no-reply@domain.dk\r\n";
$headers .= 'Cc: xx@domain.dk' . "\r\n";
$headers .= 'Bcc: xx@domain.dk' . "\r\n";

// Send den
mail($to, $subject, $message, $headers);
Avatar billede Kast20 Seniormester
25. oktober 2013 - 16:51 #1
Har også kigget på denne artikel:
http://www.ineedtutorials.com/code/php/export-mysql-data-to-csv-php-tutorial

Men kan ikke lige få det tilpasset så CSV-filen bliver vedhæftet i mailen der sendes?
Avatar billede nemlig Professor
25. oktober 2013 - 17:26 #2
Hejsa.
Jeg har et færdigt script, jeg kan maile til dig, hvis du er interesseret. Jeg kan også smide koden her, men der er over 200 linjer
Jeg kalder scriptet med et cronjob med det interval, jeg ønsker.
Og scriptet kan defineres, hvilket tabeller, der skal mailes.
Avatar billede Kast20 Seniormester
25. oktober 2013 - 18:50 #3
Nemlig > Det ville være super hvis du gad det. Jeg har sendt dig en mail med min emailadresse. :-)

Du må gerne smide et svar her, så sender jeg points. :-)

God weekend!
Avatar billede nemlig Professor
25. oktober 2013 - 19:19 #4
Jeg samler ikke, så tag dem selv. Mail er nu sendt.
Avatar billede Kast20 Seniormester
27. oktober 2013 - 13:12 #5
Tak for hjælpen! :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester