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
|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden |
10.04.2010, 14:10:56
|
Anfänger
|
|
Registriert seit: Apr 2010
Alter: 34
Beiträge: 2
|
|
Hilfe gesucht bei E-Mail mitteilung!!!!
Hallo,
ich suche dringend hilfe bei folgendem vorgang, da ich noch anfänger bin in php.
ich erstelle eine Seite wo Noten eingetragen werden
Die Noten werden in eine Mysql datenbank eingetragen
Der befehl sollte vorher prüfen, wer noten eingetragen hat oder nicht(also z. B. Herr Kunze hat seien noten eingetragen und Frau Müller und Herr Bechtel noch nicht!
die leute wo nichts eingetragen haben erhalten nee nachricht ( in diesem Falle Frau Müller und Herr Kunze)
diese nachricht erfolgt per email
___________________________________________________
Im ersten Schritt selektierst du aus deiner mysql Tabelle welcher Benutzer bereits Noten abgegeben hat bzw. noch keine abgegeben hat.
Ich gehe mal davon aus das jeder Benutzer bei der Registrierung seine E-Mailadresse hinterlegen muss, dann jagst du das durch eine foreach schleife und mailst an jedem eine entsprechende Nachricht. Das packste dann noch in einen Cronjob und das wars.
......war en tipp von nem kumpel von mir, aber ich kreig des net gebacken irgendwie
_____________________________________________________
mein versuch:
<?php
$sql = "SELECT `e-mail` FROM `früchte` WHERE `registriert` =\"nein\"";
foreach($sql)
{
echo "$email = $_POST["email"];
$UserName = $_POST["UserName"];
$nachricht = $_POST["nachricht"];
$dieMessage ="$UserName \n";
$dieMessage .= $nachricht;
mail("ihr@email.de", "hallo sie haben noch nichts eingetragen!", $dieMessage, "From:$email");
}
?>
BItte um schnellstmögliche antwort danke
mfg Holdi
|
10.04.2010, 15:04:31
|
|
Administrator
|
|
Registriert seit: Jul 2004
Beiträge: 3.707
|
|
AW: Hilfe gesucht bei E-Mail mitteilung!!!!
Hallo und willkommen hier im Forum.
Zitat:
Zitat von Holdi
[...]
(also z. B. Herr Kunze hat seien noten eingetragen und Frau Müller und Herr Bechtel noch nicht!
die leute wo nichts eingetragen haben erhalten nee nachricht ( in diesem Falle Frau Müller und Herr Kunze)
|
Das widerspricht sich - oder?
Zitat:
Zitat von Holdi
[...]
___________________________________________________
Im ersten Schritt selektierst du aus deiner mysql Tabelle welcher Benutzer bereits Noten abgegeben hat bzw. noch keine abgegeben hat.
...
_____________________________________________________
|
Dann mach doch auch das was Dein Kumpel Dir gesagt hat.
Was soll das:
Zitat:
PHP-Code:
foreach($sql)
{
echo "$email = $_POST["email"];
$UserName = $_POST["UserName"];
$nachricht = $_POST["nachricht"];
$dieMessage ="$UserName n";
$dieMessage .= $nachricht;
mail("ihr@email.de", "hallo sie haben noch nichts eingetragen!", $dieMessage, "From:$email");
}
|
Anfänger hin oder her - Deine Hausaufgaben wird Dir hier keiner erledigen. Also bitte die Basics ( Punkt D) anschauen und wenn dann noch Fragen sind, sind wir die Letzten die Dir nicht weiterhelfen.
PS: Mit "BItte um schnellstmögliche antwort ..." machst Du Dir hier keine Freunde.
__________________
Gruss vt1816
Erwarte nicht, dass sich jemand mehr Mühe mit der Antwort gibt als Du Dir mit der Frage.
. . . . . Feedback wäre wünschenswert
Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.
Ansosnten gilt: Hilfe ausserhalb dieses Thread (PN, WhatsApp, Skype, Mail, ICQ, etc...) nur per Barzahlung oder Vorauskasse!
Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Geändert von vt1816 (10.04.2010 um 15:15:10 Uhr)
|
10.04.2010, 15:18:53
|
|
Senior Member
|
|
Registriert seit: Feb 2006
Ort: Wallrabenstein
Alter: 55
Beiträge: 1.044
|
|
AW: Hilfe gesucht bei E-Mail mitteilung!!!!
Zitat:
Zitat von Holdi
PHP-Code:
<?php
$sql = "SELECT `e-mail` FROM `früchte` WHERE `registriert` =\"nein\"";
foreach($sql)
{
echo "$email = $_POST["email"];
$UserName = $_POST["UserName"];
$nachricht = $_POST["nachricht"];
$dieMessage ="$UserName n";
$dieMessage .= $nachricht;
mail("ihr@email.de", "hallo sie haben noch nichts eingetragen!", $dieMessage, "From:$email");
}
?>
|
Zum einen fehlt der Connect MySQL und der gewünschten Datenbank.
Dein $sql würde ich besser so schreiben:
PHP-Code:
$sql = "SELECT `e-mail` FROM `früchte` WHERE `registriert` ='nein'";
Da das $sql allein noch keine Anfrage an die DB darstellt müsstest du die Query erst einmal ausführen und die Daten aus der DB holen.
PHP-Code:
/*Verbindung zu MySQL und Auswahl der Datenbank sollte hier schon erfolgt sein. Incl. Fehler abfangen*/
$sql = "SELECT `e-mail` FROM `früchte` WHERE `registriert` ='nein'";
$result = mysql_query($sql);
while($row = mysql_fetch_array($result)) {
/*hier das Ergebnis der Abfrage für die zu versendenen Emails verarbeiten*/
}
Das ist eine SEHR vereinfachte Darstellung. Beachte, daß in diesem Beispiel keine Fehler in der Anweisung selbst abgefangen werden und auch nicht brücksichtig wird, daß der SELECT kein Ergebnis gebracht hat, weil z. B. alle ihre Noten eingetragen haben.
PHP-Code:
echo "$email = $_POST["email"];
$UserName = $_POST["UserName"];
$nachricht = $_POST["nachricht"];
Das Echo ist hier schon einmal fehl am Platz.
$_POST Daten sind keine vorhanden, da kein Formular versendet bzw. verarbeitet wurde.
|
11.04.2010, 13:44:05
|
Anfänger
|
|
Registriert seit: Apr 2010
Alter: 34
Beiträge: 2
|
|
AW: Hilfe gesucht bei E-Mail mitteilung!!!!
also ich hab mich mal probiert aber funktioniert trotzdem net
//Datenbank connect
<?php
error_reporting(E_ALL);
define ( 'MYSQL_HOST','localhost' );
define ( 'MYSQL_BENUTZER', '' );
define ( 'MYSQL_KENNWORT', '' );
define ( 'MYSQL_DATENBANK', 'obst' );
$db_link = mysql_connect (MYSQL_HOST, MYSQL_BENUTZER, MYSQL_KENNWORT);
if ( $db_link )
{
echo $sql;
$sql = "SELECT `e-mail` FROM `früchte` WHERE `registriert` ='nein'";
$result = mysql_query($sql);
while($row = mysql_fetch_array($result))
{
//E-Mail
header( 'Content-Type: text/html; charset=utf-8' );
$empfaenger = $result;
if (isset($_POST['senden']))
{
// Funktionen einbinden
include( 'funktionen.inc.php' );
// Benutzereingaben bereinigen und auf Injection prüfen
cleanInput();
// Name prüfen
$name = checkName( $_POST['name'] );
// Email prüfen
$email = checkEmail( $_POST['email'] );
// Betreff und Nachricht prüfen
if ((strlen( $_POST['betreff'] ) < 5) || (strlen( $_POST['nachricht'] ) < 5))
{
die( 'Bitte füllen Sie alle Felder aus!' );
}
else
{
$betreff = $_POST['betreff'];
$nachricht = $_POST['nachricht'];
}
$mailbody = file_get_contents( 'mailbody.txt' );
$mailbody = str_replace( '###NAME###', htmlspecialchars( $name ), $mailbody );
$mailbody = str_replace( '###EMAIL###', $email, $mailbody );
$mailbody = str_replace( '###NACHRICHT###', htmlspecialchars( $nachricht ), $mailbody );
$mailheader = "From: PHP Email Tutorial<noreply@" .$_SERVER['SERVER_NAME']. ">\r\n";
$mailheader .= "Reply-To: " .$name. "<" .$email. ">\r\n";
$mailheader .= "Return-Path: noreply@" .$_SERVER['SERVER_NAME']. "\r\n";
$mailheader .= "MIME-Version: 1.0\r\n";
$mailheader .= "Content-Type: text/plain; charset=UTF-8\r\n";
$mailheader .= "Content-Transfer-Encoding: 7bit\r\n";
$mailheader .= "Message-ID: <" .time(). " noreply@" .$_SERVER['SERVER_NAME']. ">\r\n";
$mailheader .= "X-Mailer: PHP v" .phpversion(). "\r\n\r\n";
if (@mail( $empfaenger, htmlspecialchars( $betreff ), $mailbody, $mailheader ))
{
echo 'Danke, die Email wurde verschickt!';
}
}
echo $db_link;
}
else
{
fehler beime eintragen . mysql_error());
}
mysql_close($db_link );
?>
|
11.04.2010, 14:06:07
|
|
Administrator
|
|
Registriert seit: Jul 2004
Beiträge: 3.707
|
|
AW: Hilfe gesucht bei E-Mail mitteilung!!!!
Zitat:
Zitat von Holdi
also ich hab mich mal probiert aber funktioniert trotzdem net
|
Das ist doch schon mal ein ausbaufähiger Anfang.
Was funktioniert nicht? Welche Fehlermeldung(en) erhältst Du? Erhältst Du keine Fehlermeldung(en), dann schalte die Fehlermeldungen ein/höher und die Anzeige ein. Entferne während der Entwicklung/Tests das/alle '@'.
Wie sieht es jetzt aus?
__________________
Gruss vt1816
Erwarte nicht, dass sich jemand mehr Mühe mit der Antwort gibt als Du Dir mit der Frage.
. . . . . Feedback wäre wünschenswert
Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.
Ansosnten gilt: Hilfe ausserhalb dieses Thread (PN, WhatsApp, Skype, Mail, ICQ, etc...) nur per Barzahlung oder Vorauskasse!
Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Themen-Optionen |
|
Ansicht |
Linear-Darstellung
|
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.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 11:10:17 Uhr.
|