login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Nieuwsbrief mailen

Offline Juser - 20/04/2006 15:16
Avatar van JuserMySQL interesse Ik ben bezig met een mailing/nieuwsbrieven systeem. Ik heb 't volgende script:

nieuwsbrief_versturen.php
  1. <?
  2. IF (session_is_registered("sess_loginnaam") && session_is_registered("sess_id"))
  3. {
  4. INCLUDE("connect.php");
  5.  
  6. $sql = mysql_query("SELECT * FROM nieuwsbriefontvangers");
  7. while($assoc = mysql_fetch_assoc($sql))
  8. {
  9. $sql2 = mysql_query("SELECT * FROM nieuwsbrief ORDER BY id DESC LIMIT 1");
  10. $assoc2 = mysql_fetch_assoc($sql2);
  11. mail($assoc['email'], $assoc2['titel'], $assoc2['bericht']);
  12. }
  13.  
  14. ECHO"<META HTTP-EQUIV=\"refresh\" CONTENT=\"0; URL=?pagina=nieuwsbrief/main_nieuwsbrief.php\">";
  15. }
  16. ELSE
  17. {
  18. <META HTTP-EQUIV=\"refresh\" CONTENT=\"0; URL=../index.php\">
  19. ";
  20. }
  21. ?>


In connect.php wordt de verbinding met de database gemaakt.

Nu is het probleem:
Ik krijg geen foutmelding, maar er wordt ook niks gemaild!?!:s

Wie kan me helpen, ben al tijden aan 't zoeken naar een oplossing maar niks werkt. B.v.d.

11 antwoorden

Gesponsorde links
Offline Ultimatum - 20/04/2006 15:19
Avatar van Ultimatum PHP expert zie zo je probleem niet maar gebruik altijd error handeling dus or die(mysql_error());, mocht er een fout in je query zitten krijg je een betere error 

dus
$sql = mysql_query("SELECT * FROM nieuwsbriefontvangers");

word
$sql = mysql_query("SELECT * FROM nieuwsbriefontvangers") or die(mysql_error());
Offline b4nkr0bz0r - 20/04/2006 15:19
Avatar van b4nkr0bz0r PHP gevorderde Volgens mij komt het omdat je bij de mail();-functie geen headers meestuurt, je moet hier even bij tutorials kijken voor het gebruik van die functie.
Offline Juser - 20/04/2006 15:24
Avatar van Juser MySQL interesse Thanks, hiermee ben ik iig weer een stapje dichterbij.

Maarre..
Nu krijg ik deze melding:
Parse error: parse error, unexpected T_STRING in /usr/home/web/snl90663/jcms/cms/nieuwsbrief/nieuwsbrief_versturen.php on line 7

Maar daar zie ik geen fout in.
Offline Thomas - 20/04/2006 15:24 (laatste wijziging 20/04/2006 15:25)
Avatar van Thomas Moderator Het is niet verplicht om headers mee te sturen.
Overigens, het succesvol versturen van mail wil niet zeggen dat je het ook ontvangt. Een spamfilter zou je e-mail om zeep geholpen kunnen hebben.

Kijk (zoals Ultimatum voorstelt) of je queries werken, en voeg om te testen die("...")-statements toe om te kijken welke if-statements true opleveren (of welke niet).

session_is_registered() is trouwens al een hele tijd verouderd.

In plaats van session_is_registered("sess_loginnaam") controleer je nu of een sessie-variabele geset is met isset($_SESSION['sess_loginnaam']).

Zie de tutorial over sessies.
Offline Juser - 20/04/2006 15:28
Avatar van Juser MySQL interesse Ik stuur 't momenteel om te testen maar naar 1 adres, een hotmail adres waarbij er geen spam filter is ingesteld. dus ik zou het (ook al zou ik deze hebben ingesteld) altijd 'ergens' op deze account moeten ontvangen.
Offline Ultimatum - 20/04/2006 20:17
Avatar van Ultimatum PHP expert als je nou eerst de vars die je opvraagt in $sql2 gewoon echo't dan om te testen dat ze niet leeg zijn , als dat het geval kan je vanuit daar verder werken 
Offline Juser - 21/04/2006 09:53
Avatar van Juser MySQL interesse Ok, ga d'rmee aan de slag, bedankt
Offline Blitz - 21/04/2006 10:09
Avatar van Blitz Nieuw lid Heb je wel een mailfunctie op je host (dus smtp) ?
Offline Juser - 21/04/2006 11:43
Avatar van Juser MySQL interesse Ja en nee!?!
Ik weet dat ik ergens wat moet aanpassen in php.ini, maar waar de website gehost wordt is dat bestand niet vrijgegeven om aan te passen.

Wat moet ik precies wijzigen?
Offline Koen1 - 21/04/2006 14:23
Avatar van Koen1 Nieuw lid Als de sendmail functie is geinstalleerd heb je toch geen omkijken meer naar SMTP instellingen!?

Even over dat Hotmailadres: bij Hotmail krijg je je mails vaak later en wanneer je geen headers toevoegt of te weinig, dan worden deze mails verwijdert door de standaard spamfilter van Hotmail.
Offline Ultimatum - 21/04/2006 14:37
Avatar van Ultimatum PHP expert als er geen mail server aanwezig is dan krijg je een error, en ik vrees dat dat ding er wel is anders zou het topic wel gaan over een mailserver 

@koen:
Citaat:
Ik stuur 't momenteel om te testen maar naar 1 adres, een hotmail adres waarbij er geen spam filter is ingesteld.


van een paar berichten omhoog, waar je kan zien dat er dus geen spamfilter is en dat van jou dus niet zou horen mogen kloppen 
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.22s