SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Handbuch der Java-Programmierung

Handbuch der Java-Programmierung zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP für Fortgeschrittene und Experten

PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 02.08.2002, 10:34:58
tschaly tschaly ist offline
Anfänger
 
Registriert seit: Aug 2002
Ort: München
Alter: 76
Beiträge: 10
Gibt es sowas schon fertig ?

Ich möchte meinen Mitgliedern zum Geburtstag eine eMail senden.

1. Es soll das Tagesdatum abgefragt werden.
2. Aus der sqlDatenbank alle User die diesem Datum (TT.MM) entsprechen, mit Vornamen und eMail selektiert werden.
3. Allen selektierten Usern automatisch eine eMail senden.

tx
tschaly
__________________
Jeder Tag ist ein schöner Tag !
Mit Zitat antworten
  #2  
Alt 02.08.2002, 11:31:05
Ben20
Guest
 
Beiträge: n/a
Code:
<?php

mysql_connect([zugangsdaten]);
mysql_select_db([deinedatenbank]);

$datum = date('m.d.');

$abfrage = @mysql_query("SELECT vorname, nachname, mail FROM user WHERE DATE_FORMAT(geburtstag , '%d.%m') = $datum")

while($array = @mysql_fetch_row($abfrage)) {
  mail($array[2], "Happy Birthday", "Hallo $array[0], $array[1]...");
}

?>
Vorsicht - da könnten noch ein paar Bugs drin sein.


Problem dabei ist, dass die Geburtstagsgrüße nur versendet werden, wenn auch jemand an dem Tag auf die Seite kommt. Wenn die Datei automatisch gestartet werden soll, brauchst Du Cronjobs (zumindest bei Apache).
Mit Zitat antworten
  #3  
Alt 02.08.2002, 21:32:39
tschaly tschaly ist offline
Anfänger
 
Registriert seit: Aug 2002
Ort: München
Alter: 76
Beiträge: 10
Re: Gibts so was....

Hallo Ben,
Dein Vorschlag scheint zu fuzzen, zumindest bekomme ich keine Fehlermeldung. Da ich aber lokal arbeite kann ich das nicht testen. Gibt es eine Möglichkeit das Ergebnis der Selection mit "echo" anzeigen zu lassen ?

tx
tschaly
__________________
Jeder Tag ist ein schöner Tag !
Mit Zitat antworten
  #4  
Alt 02.08.2002, 21:35:16
Ben20
Guest
 
Beiträge: n/a
schreib einfach statt.


mail(...);

echo "$array0[2], $array0[0], $array0[1]<br>";

Dann gibt er dir jede Mailadresse samt Vor- und Nachname in einer Zeile aus.
Mit Zitat antworten
  #5  
Alt 02.08.2002, 22:46:55
tschaly tschaly ist offline
Anfänger
 
Registriert seit: Aug 2002
Ort: München
Alter: 76
Beiträge: 10
Nochmal

... nochmal,
sorry nach wievor keine Fehlermeldung und keine Anzeige.
Ich habe in der Test-Datenbank 4 Datensätze. Alle Geburtsdatum
lauten auf : 02.08.1973. Es sollten also 4 Datensõtze angezeigt werden.

<?PHP $keinlevelnotwendig=TRUE; include("../geheimchaos.php");
mysql_select_db("premium");
$datum = date('m.d.');
$abfrage = @mysql_query("SELECT vorname , nachname, email FROM chaos_user WHERE DATE_FORMAT(geburtsdatum , '%d.%m') = $datum");
while ($array = @mysql_fetch_row($abfrage)){
echo "$array0[2], $array0[0], $array0[1],<br>";
}
?>
__________________
Jeder Tag ist ein schöner Tag !
Mit Zitat antworten
  #6  
Alt 02.08.2002, 23:14:45
Ben20
Guest
 
Beiträge: n/a
Wie gesagt:

Zitat:
Vorsicht - da könnten noch ein paar Bugs drin sein.

Und da ist auch schon einer.

Code:
$datum = date('m.d.'); // Datum  mit zwei Punkten.


$abfrage = @mysql_query("SELECT r WHERE DATE_FORMAT(geburtsdatum , '%d.%m') = $datum");  // Datum mit nur einem Punkt
Mit Zitat antworten
  #7  
Alt 03.08.2002, 07:12:50
Benutzerbild von CyberAge
CyberAge CyberAge ist offline
Junior Member
 
Registriert seit: Apr 2002
Alter: 42
Beiträge: 282
CyberAge eine Nachricht über ICQ schicken CyberAge eine Nachricht über AIM schicken CyberAge eine Nachricht über Yahoo! schicken
mach es dir doch ganz einfach und speichere das datum in aufgeschlüsselter form, also folgendermaßen:

name dd mm jj
halli 02 08 1972
galli 05 06 1985

und so weiter! dann brauchst du nur noch den folgenden query abfragen:

$person = "SELECT * FROM `tabelle` WHERE 1 AND `dd` = '".date(d)."' AND `mm` = '".date(m)."'";

das wäre meiner meinung nach der einfachste weg.
__________________
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Im Leben ist nichts umsonst!
Selbst der Tod kostet das Leben!
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Mit Zitat antworten
  #8  
Alt 03.08.2002, 21:16:13
tschaly tschaly ist offline
Anfänger
 
Registriert seit: Aug 2002
Ort: München
Alter: 76
Beiträge: 10
noch immer Syntaxfehler

Syntaxfehler ! .... nur wo ?

You have an error in your SQL syntax near 'geburtsdatum ('d.m') = 03.08' at line 1
$abfrage = "SELECT vorname , nachname, email from user WHERE DATE_FORMAT geburtsdatum ('d.m') = $datum";

tx
tschaly
__________________
Jeder Tag ist ein schöner Tag !
Mit Zitat antworten
  #9  
Alt 03.08.2002, 22:31:26
Ben20
Guest
 
Beiträge: n/a
WHERE DATE_FORMAT(geburtsdatum, '%d.%m.') = '$datum'";

so ist es richtig!
Mit Zitat antworten
  #10  
Alt 04.08.2002, 14:05:43
tschaly tschaly ist offline
Anfänger
 
Registriert seit: Aug 2002
Ort: München
Alter: 76
Beiträge: 10
Sxntaxerror

Hallo Ben,
Danke, kein error mehr. Nur wie kann ich das überprüfen ?
mit der Änderung:

mail(...);

echo "$array0[2], $array0[0], $array0[1]<br>";

habe ich auch keine Anzeige.

tx
tschaly
__________________
Jeder Tag ist ein schöner Tag !
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 18:36:27 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt