php.de

Zurück   php.de > Webentwicklung > Software-Design

Software-Design Diskussionen auf Profi-Niveau: PHP Lösungen auf konzeptioneller Ebene

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 23.09.2008, 10:53  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard Crontab nachbauen

Hallo Leute,

ich habe nicht direkt ein Problem, sondern etwas das ich gerne umsetzen würde und ich möchte von euch ein paar Anregungen sammeln.

Und zwar geht es um eine automatische E-Mail-Benachrichtigung. Ich möchte dem User so viel Komfort wie möglich bieten, das heisst er soll selbst entscheiden wann und wie oft er eine E-Mail über den aktuellen Datenbestand bekommt.

Als Vorbild dafür habe ich mir die UNIX-Crontab ausgesucht, denn hier ist es ja möglich alle denkbaren Varianten von Zeitsteuerung zu speichern.

Ich würde dann einen einzigen Cronjob laufen lassen, der (z.B. alle 15 Minuten) ein Script aufruft was wiederum anhand der vom User gepeicherten Daten nachschaut ob und was er tun soll.

Soweit so gut. Nun möchte ich natürlich das Script selbst so einfach wie möglich gestalten und die meiste Arbeit der Datenbank überlassen. Dazu brauche ich ein schlaues Tabellendesign durch das ich möglichst durch eine Abfrage alle relevanten Daten, die den jetzigen Zeitraum betreffen, bekomme.

Nun ist die Frage wie man das am schlausten angeht. Wenn jemand zum Beispiel von Mo-Fr um 10 Uhr eine Benachrichtigung haben möchte, so lässt sich das ja im Crontab wunderbar einfach speichern. Würde ich dieses Konzept allerdings 1:1 in die Datenbank übernehmen, so muss ich die Daten in meinem Script wieder auseinander fummeln und genau das will ich vermeiden.

Wie gesagt möchte ich eure Ideen und Vorschläge dazu hören, gerne weiche ich auch von jetzigen Konzept ab, denn es ist bisher nur in meinem Kopf

Gruß
Cy
cycap ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 23.09.2008, 15:01  
Erfahrener Benutzer
 
Benutzerbild von phpdummi
 
Registriert seit: 06.06.2008
Beiträge: 1.631
PHP-Kenntnisse:
Anfänger
phpdummi ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ist die Wahl der Datenbank frei, sprich kannst du selber eine Datenbank installieren?
__________________
"Nobody is as smart as everybody" - Kevin Kelly
— The best things in life aren't things
phpdummi ist offline   Mit Zitat antworten
Alt 23.09.2008, 15:03  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Aber selbstnatürlich
cycap ist offline   Mit Zitat antworten
Alt 23.09.2008, 15:08  
Erfahrener Benutzer
 
Benutzerbild von phpdummi
 
Registriert seit: 06.06.2008
Beiträge: 1.631
PHP-Kenntnisse:
Anfänger
phpdummi ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Dann nimm eine Datenbank die Objekte speichern kann. Ich stehe zur Zeit voll auf CouchDB:
Apache CouchDB: The CouchDB Project
Da brauchst du dir um eine Schema keine großen Gedanken zu machen.
Du speicherst einfach die Objekte in der DB und liest sie dann genauso wieder aus.
__________________
"Nobody is as smart as everybody" - Kevin Kelly
— The best things in life aren't things
phpdummi ist offline   Mit Zitat antworten
Alt 23.09.2008, 15:11  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Hmm klingt generell interessant, aber ich versteh nicht ganz wie du dir das mit meiner Aufgabenstellung vorstellst.
cycap ist offline   Mit Zitat antworten
Alt 23.09.2008, 15:31  
Erfahrener Benutzer
 
Benutzerbild von phpdummi
 
Registriert seit: 06.06.2008
Beiträge: 1.631
PHP-Kenntnisse:
Anfänger
phpdummi ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ich dachte an sowas:
Code:
{
    "username"    :    "john wayne",
    "jobs"        :    [
                        {
                            "jobName"        : "sendXYZ",
                            "description"    : "send an email with data XYZ to john wayne",
                            "crontab"        : "30     18     *     *     *         php sendMail?to=john wayne&data=XYZ"
                        },
                        {
                            "jobName"        : "sendABC",
                            "description"    : "send an email with data ABC to john wayne",
                            "crontab"        : "30     18     *     *     *         php sendMail?to=john wayne&data=ABC"
                        }
                    ]
}
Über CouchDB holst du dir alle Objekte und arbeitest jeden "job" nacheinander ab.

EDIT:
Einen Wrapper für PHP gibt es hier:
http://kore-nordmann.de/projects/phpillow/index.html
__________________
"Nobody is as smart as everybody" - Kevin Kelly
— The best things in life aren't things
phpdummi ist offline   Mit Zitat antworten
Alt 23.09.2008, 15:42  
Erfahrener Benutzer
 
Benutzerbild von phpdummi
 
Registriert seit: 06.06.2008
Beiträge: 1.631
PHP-Kenntnisse:
Anfänger
phpdummi ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Wie sieht denn die Applikation so aus?
Wie werden Emails verschickt bzw. was enthalten sie?
Wäre sehr nützlich mal etwas über die Objekte zu erfahren.
Das obere Schema kannst du natürlich auch auf eine Relationale DB übertragen.
__________________
"Nobody is as smart as everybody" - Kevin Kelly
— The best things in life aren't things
phpdummi ist offline   Mit Zitat antworten
Alt 24.09.2008, 08:26  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Naja im Prinzip wars erstmal nur eine Idee. Ich habe im Prinzip meine eingeloggten User und die klicken dann irgendwie auf 'Services' und machen ein Häckchen und tragen die Zeiten ein.

Die E-Mails werden wohl meistens ein PDF mit aktuellen Statistiken im Anhang haben, was zur Laufzeit generiert wird.

Das drumherum ist auch gar nicht so wichtig, ich kann das drumherum nach belieben anpassen, mir gehts erstmal Grundsätzlich um eine schlaue Vorgehensweise. Die Integration in das vorhandene Programm soll erstmal nicht Tatbestand dieses Threads sein.

Klar kann ich das so speichern wie du vorgeschlagen hast, aber wie gesagt, dann muss ich ja jeden Eintrag selektieren und auseinander nehmen, ich kann bei deinem Vorschlag eben nicht sagen >>Liebe Datenbank, gib mir alle Jobs dir genau jetzt dran sind<<.
cycap ist offline   Mit Zitat antworten
Alt 24.09.2008, 09:24  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 387
MrNiceGuy befindet sich auf einem aufstrebenden Ast
Standard

Um ganz ehrlich zu sein: Ich habe noch nicht wirklich verstanden, was du da genau machen willst!?

Dass die User auf deiner Plattform auswählen, dass sie bestimmte Daten zu bestimmten Zeite zugemail bekommen wollen ist ja noch nachvollziehbar, aber wo ist jetzt genau dein Problem? Könntest du vielleicht mal ein Beispiel geben, welche Art von Daten wie gespeichert werden und anhand welcher Kriterien diese dann selektiert und verschickt werden sollen?
MrNiceGuy ist offline   Mit Zitat antworten
Alt 24.09.2008, 10:06  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Zitat:
Zitat von MrNiceGuy Beitrag anzeigen
Um ganz ehrlich zu sein: Ich habe noch nicht wirklich verstanden, was du da genau machen willst!?

Dass die User auf deiner Plattform auswählen, dass sie bestimmte Daten zu bestimmten Zeite zugemail bekommen wollen ist ja noch nachvollziehbar, aber wo ist jetzt genau dein Problem? Könntest du vielleicht mal ein Beispiel geben, welche Art von Daten wie gespeichert werden und anhand welcher Kriterien diese dann selektiert und verschickt werden sollen?
Nun, wie gesagt, ich nehme mir als die UNIX Crontab als Vorbild, vielleicht ist es jetzt klarer.
cycap ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

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

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Crontab - wget AllOnline PHP Tipps 2008 7 29.05.2008 09:19
Crontab Wget - MySQl Dump AllOnline PHP Tipps 2008 3 28.05.2008 15:09
Crontab funktioniert nicht Plague Server, Hosting und Workstations 10 01.06.2007 13:50
Select / Option Feld mit CSS nachbauen ? andrew22 HTML, Usability und Barrierefreiheit 2 30.11.2006 16:06
glob nachbauen Zergling-new PHP Tipps 2006 9 12.03.2006 23:51
MAILTO in crontab lamp Server, Hosting und Workstations 4 13.01.2006 19:31
Leerzeilen in crontab löschen PHP Tipps 2005-2 0 08.08.2005 17:34
Crontab über Console ohne Editor freq.9 Server, Hosting und Workstations 6 05.05.2005 13:38
newscript nachbauen PHP Tipps 2005 5 19.04.2005 08:47
faq -system von phpbb nachbauen elconde PHP Tipps 2005 5 11.03.2005 14:22
[Erledigt] Crontab Problem Server, Hosting und Workstations 4 27.02.2005 21:08
CronJob testen / mehrere Cronjobs anlegen..?! Server, Hosting und Workstations 1 22.10.2004 08:45
Seltsamer Eintrag in die CronTab MrMarco Server, Hosting und Workstations 4 12.10.2004 13:12

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php cronjob nachbau, crontab nachbauen, cron php nachbauen, cronjob php nachbauen, php script cronjob nachbauen, php cronjob nachbauen, crontab php nachbau, cronejob mit hilfe von php nachbauen, cron php nachbau, couchdb sendmail, cronjob jobs nacheinander, php crontab nachbauen, cronjob nachbauen, crontab mailto, programm crontab, cron ohne cron php

Alle Zeitangaben in WEZ +1. Es ist jetzt 04:36 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum