MySQL og PHP nyhedsbrev

Tags:    php

Jeg er ved at lave et nyhedsbrev hvor man kan tilføje sig til mysql database osv. Alt det med at tilføje, slette osv går fint.

Har også lavet så den sender og henter det den sender fra en fil...... MEN nu er problemet der...

På den side hvor man tilføjer email vælger man om man vil have html eller tekst mail. Dette blir så gemt i et felt i mysql databasen kaldet mailformat. Vælges html gemmes det som htmlmail og vælges tekst gemmes det som tekstmail.

I min kode på send siden (som er meningen skal ligge på administrationsside ) skal den så selv se om det er html eller tekst folk har valgt.
Hvis det er tekst skal den hente nyhedsbrev.html og ellers skal den hente nyhedsbrev.txt.

Min kode som sender til alle mails i databasen (liggende i feltet mail) ser sådan her ud og virker.


Bilag 1
$mail_til = mysql_query("SELECT mail FROM nyhedsbrev");
while ($mails = mysql_fetch_row($mail_til)) {
for($i = 0;$i < count($mails);$i++) {
mail($mails[$i],$emne,$contents,$Header );
echo "mail til ".$mails[$i]." sendt<BR>";
}


Contents som henter mailen ser sådan her ud og virker:

Bilag 2
$filename = 'nyhedsbrev.html';
$fp = fopen($filename, "r");
$contents = fread($fp, filesize($filename));
fclose($fp);



Så kunne man evt lave et magen til bilag 2 der sender tekstfilen.... som dette:

Bilag 2
$filename = 'nyhedsbrev.txt';
$fp = fopen($filename, "r");
$contents2 = fread($fp, filesize($filename));
fclose($fp);


Men hvordan går man ind i bilag 1 og ændre dette således at den sender tekstmail til dem der har valgt det og html mails til dem der har valgt det dvs får databasen til at tjekke det i feltet mailformat......

Håber du kan hjælpe...... der ligger atter timer og timers forgæves mislykkede forsøg bag

Jeg kan ikke se fejl meddelelser.... ved ikke hvorfor.
Har slået display_errors til on og også prøvet med startup errors. Og browseren er sat til at vise fejl...
Hvis nogen har en ide om hvorfor det sker hører jeg den gerne og giver gerne lidt point for den.

Men håber du kan hjælpe......

-----------
mvh
Kim



5 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 2 karma
Sorter efter stemmer Sorter efter dato
Hmm

Ikke helt med.....

Den skal sende en mail til samtlige der står i min MySQL database i feltet mail.
Samtidige skal den for hver enkelt gå ind og tjekke om de har valgt html format eller txtformat.... det er gemt i feltet mailformat

Så vidt jeg kan se tjekker din bare om det er txt eller html format men det er ikke integreret så det sender en mail til samtlige og vælger det rigtige ud for hver hvilket er det jeg har probs med :(

-----------
mvh
Kim

Nååh...
Så ville jeg (det er måske nok lidt dumt...)
lave to lykker:
en med
$html_mail = mysql_query("SELECT * FROM `nyhedsbrev` WHERE (mailformat='htmlmail')");
og
$txt_mail = mysql_query("SELECT * FROM `nyhedsbrev` WHERE (mailformat='tekstmail')");
Og så lave en while lykke efter hver af dem, hvor du inde i den så finder og laver mail functionen...
Fold kodeboks ind/udKode 



//Krille

[Redigeret d. 22/08-04 12:44:13 af Krille]



Prøv til at starte med at lave om på htmlmail og tekstmail, kald det i stedet 1 og 2. htmlmail = 1 og tekstmail = 2.
Det er lettere og holde styr på og fylder ikke så meget...
Fold kodeboks ind/udKode 


//Krille

[Redigeret d. 21/08-04 16:27:34 af Krille]



Hmm

Ikke helt med.....

Den skal sende en mail til samtlige der står i min MySQL database i feltet mail.
Samtidige skal den for hver enkelt gå ind og tjekke om de har valgt html format eller txtformat.... det er gemt i feltet mailformat

Så vidt jeg kan se tjekker din bare om det er txt eller html format men det er ikke integreret så det sender en mail til samtlige og vælger det rigtige ud for hver hvilket er det jeg har probs med :(

-----------
mvh
Kim



Hejsa

Det lykkes mig at få det til at virke på den anden måde med hjælp fra en.

Men du få lige nogle af pointene som tak for hjælpen :)

Mvh
Kim



.



t