Hallo Gemeinde.
Bitte erschlagt mich nicht gleich, aber ich habe gesucht!
Ich würde gerne die Pm`s als Mail versenden, oder wenigstens eine Nachricht per Mail, das der User eine PM erhalten hat.
Natürlich nur wenn er nicht online ist/war.
Soll also heissen, wenn ein User von einem anderm eine Pm bekommt und er ist on, dann bekommt er Sie ja automatisch per Popup. Wenn er nun aber lange nicht online war, soll er eine Mail bekommen, das er ne PM bekommen hat.
Ist sowas zu realisieren?
Gruß
Kampfi
Tja, wenn Du an der Stelle, an der die PMs in die Datenbank für den User eingefügt werden eine Abfrage einbaust, ob er gerade online ist oder nicht, dann schon.
Weil ist er nicht online, dann sickt Du ihm das Ding eben über die PHP-Mailfunktion. Dürfte nicht so schwer sein.
Tip: nimm Dir die functions2.php vom eBoard, das sind diverse Aufrufe der Mail-Funktion drinnen, dann hast Du eine Vorlage für die Syntax. Such nach "mail(", dann solltest Du es finden ;)
Viel Erfolg
Aha, so in der Art hatte ich mir das schon vorgestellt, zumindest vom Verständnis...
Aber ich denke das ist nichts für mich, weil ich`s net kann...
Dachte jemand hat das schon mal realisiert und ich könnte da was abzwacken *gg
Ich werde mich mal reinlesen.
danke
Für das PM müssste es eine Funktion geben und dort die Mailfuinktion mit Abfrage, ob User online ist oder nicht rein.
Sollte sich keiner mehr melden, der es Dir macht, so gib Bescheid. Ich mache es dann.
Nur mit dem neuen MX dürfte es dann wieder weg sein.
[Editiert am 5/7/2003 von JensWagenknecht]
HAllo
Wie würde den die abfrage aussehen.
Die stelle habe ich gefunden wie ich die E-Mails verschicke. Nur will ich ja die E-mails verschicken wenn der User Offline ist.
Kurz was ich gemacht habe in der index.php von Private_Messages habe ich es über messagesheader($uid); eingefügt.
list($touser_email) = sql_fetch_row(sql_query("SELECT email FROM ".$user_prefix."_users WHERE uid='$to_userid'", $dbi), $dbi);
@mail("$touser_email", "Sie haben auf der webseite eine PM", "Hier kommt Deine Message an den Empfänger rein", "From: $adminmail");
messagesheader($uid);
Nun müsste ich ja eine if bedinung dazu setzen das es nur eine E-mail gibt wenn der empfänger offline ist.
Aber Wie ??
Besten Daank schon mal im vorraus für die Mühe und tipps.
Hallo !
Ob ein User online ist, kannst Du im VKPMX mit der Funktion
mxIsUserOnline($username)
feststellen.Diese gibt false in dem Fall zurück, das der User nicht online ist.
An diese Funktion übergibst Du den entsprechenden Usernamen und wenn die Funktion dann fallse zurückgibt, kannst Du das Mailen starten :
Zitat
list($touser_uname,$touser_email) = sql_fetch_row(sql_query("SELECT uname, email FROM ".$user_prefix."_users WHERE uid='$to_userid'", $dbi), $dbi);
if (!mxIsUserOnline($touser_uname))
{
mxMail($touser_email, "Sie haben auf der webseite eine PM", "Hier kommt Deine Message an den Empfänger rein", $GLOBALS['adminmail'],"text","PM-Mail");
}
MfG
jubilee
Falls jemans noch interesse daran hat, dass Use vorher auswählen können, ob Sie per Email über neue PN's informiert werden möchte bitte kurz bescheid sagen ... hab das gerade dazu gebaut , weil mir meine User sonst wegen unerlaubter Spam aufs Dach gestiegen wären ;)
hi...ich hätte daran interesse...
HI :)
also ... ich ein wenig Frickelei, aber machbar.
Zunächst mußt Du eine neue Zeile in die prefix_users einfügen. Der Übersichthalber am besten unter user_pm_popuptime - BITTE VORHER DIE PREFIX_USERS DUMPEN!!!
Das neue Feld heißt user_pm_mail und hat folgende Werte:
Typ = INT
Länge/Set = 1
null = not null
Standart = 0
In die Datei Your_Account/edithome.php habe ich unter die Abfrage für die PM-Popuptime folgedes eingefügt:
### steht schon drin - nur als Anhalt für den PLatz zum Einfügen####
... echo "<tr valign=\"top\"><td bgcolor=\"$bgcolor2\"><font class=\"content\">"._YA_PMPOPTIME1."</font></td>"
."<td bgcolor=\"$bgcolor3\" colspan=\"2\">"._YA_PMPOPTIME3." <select name=\"user_pm_poptime\">".$options."</select> <span class=\"tiny\">"._YA_PMPOPTIME2."</span></td></tr>";
}
#### hier jetzt der neue Code für die Mail-Checkbox #######
$pn_mail = (empty($userinfo['user_pm_mail'])) ? "" : "checked";
$user_pm_mail = (empty($userinfo["user_pm_mail"])) ? 0 : (int)$userinfo["user_pm_mail"];
echo "<tr valign=\"top\"><td bgcolor=\"$bgcolor2\"><font class=\"content\">Bei neuer PN informieren:</font></td>"
."<td bgcolor=\"$bgcolor3\" colspan=\"2\"><INPUT TYPE=\"CHECKBOX\" NAME=\"user_pm_mail\" VALUE=\"1\" ".$pn_mail."> <span class=\"tiny\">Bei einer neuen PN werden Sie vom System per Email informiert.</span></td></tr>\n";
In die Datei Private_Messages/index.php wird in die function submitmessage folgendes vor messagesheader($uid) eingefügt:
###Email bei neuer PN wenn User offline ist #####
list($touser_uname,$touser_email,$user_pm_mail) = sql_fetch_row(sql_query("SELECT uname, email, user_pm_mail FROM ".$user_prefix."_users WHERE uid='$to_userid'", $dbi), $dbi);
$message = "Halle $touser_uname,\nSie haben auf DEINE_DOMAIN.de eine neue Private Nachricht erhalten.
WICHTIG: Beachten Sie, dass dies nur eine Benachrichtigung ist. Bitte antworten Sie nicht auf diese E-Mail.
Ihre Nachricht können Sie hier abholen:\n http://www.DEINE_DOMAIN.de/modules.php?name=Private_Messages\n
=================================================================================
Wenn Sie nicht per Email über neue PN's informiert werden wollen können Sie die Option hier deaktivieren:\nhttp://www.DEINE_DOMAIN.de/modules.php?name=Your_Account&op=edithome";
$subject = "Private Nachricht auf DEINE_DOMAIN.de";
if (!mxIsUserOnline($touser_uname) && ($user_pm_mail ==1))
{
mxMail($touser_email, "$subject", $message, $GLOBALS['adminmail'],"text","PM-Mail");
}
#######
Bitte DEINE_DOMAIN durch Deine Domain ersetzen :D
Nun kannst Du unter "Deine Einstellungen" den Haken setzen, ob Du über neue PN's per Email informiert werden möchtest oder eben nicht.
Bei mir funktioniert alles wunderbar. Falls sich Fehler eingeschlichen haben also bitte Bescheid sagen :)
wie bekomme ich denn die eine zeile in die mx_users ???
Per phpmyadmin - kommt darauf an welche version Du hast, aber üblich ist der Weg:
mx_users auswählen.
Unten steht: Neue Felder hinzufügen (dort gibst du 1 an)
Dann auswählen wo sie eingefügt werden soll: nach user_pm_poptime
OK
Dann bekommst Du die Zeile angezeigt in die Du die oben genannten Werte eingibst - et voilŕ!
wo muss ich was ändern,wenn ich gerne am anfang ein haken hätte , so das die user ihn rausnehmen können ?
habe alles so gemacht wie es hier steht,aber es kommen keine emails an....
Zitatwo muss ich was ändern
Du mußt den Standartwert des Feldes user_pm_mail bei Standart auf 1 setzen. Wenn Du bereits 0 gesetzt hast mußt Du die Zeile mit dem SQL-Befehl ändern:
UPDATE `mx_users`SET `user_pm_mail`='1' WHERE `user_pm_mail`='0';
<< BITTE vorher wieder dumpen!
Zitathabe alles so gemacht wie es hier steht,aber es kommen keine emails an....
1. War der User an den die PN gerichtet war wirklich offline? Nur wenn er offline ist bekommt er eine eMail
2. war die Option "per Mail über neue PN informiere" beim user auch wirklich gesetzt?
bei mir fuktioniert alles einwandfrei ... komisch.
was heisst dumpen?
ansonsten war alles richtig eingestellt?
dumpen bedeutet, dass du von der mx_users vorher eine sicherungskopie machst, falls beim update etwas schief geht.
Bitte bedenke, dass ein User nicht offline ist, wenn er die Seite schließt, sondern erst, wenn er die voreingestellte Zeit nicht mehr online war (bei mir sind das 15 Minuten) oder er sich asugeloggt hat.
der user ist offline gewesen...was machen wir nun?
muss ich eigentlich auch was in die index.php sendmessage in die global einfügen?
moooooooment
Zitatmuss ich eigentlich auch was in die index.php sendmessage in die global einfügen?
Hast Du den Code in die Funktion sendmessage oder in die Function submitmessage gepakt?
In die function submitmessage() muß es rein!
hatte ich auch darein gemacht...muss ich den dort was in der global zufügen?
Grundsätzlich eigentlich nicht - bei mir lief es nach einfügen des Codes ohne weiteres Setzen von Variabeln.
Poste doch mal Deinen Code plus/minus 10-15 Zeilen und mache einen Screenshort Deiner neu eingefügten Datenbankzeile.
###########################
function submitmessage($arrpostdata, $uid){
include("modules/Private_Messages/inboxsize-conf.php");
global $prefix, $user_prefix, $PHP_SELF, $module_name, $refresh, $bgcolor2;
$uid = (int)$uid;
if(empty($arrpostdata["to_user"]) && empty($arrpostdata["to_all"]) || (!empty($arrpostdata["to_all"]) && !mxIsAdmin())) {
prvmsgerror(_ERRMSGNOUSER);
}
if (empty($arrpostdata["to_all"])) {
$result = sql_query("select uid from ".$user_prefix."_users where uname=\"".mxAddSlashesForSQL($arrpostdata["to_user"])."\"");
list($to_userid) = sql_fetch_row($result);
if (!$to_userid) {
prvmsgerror(_PMSUSERNOTINDB);
}
}
// Milhouse_Erweiterung
$result_anzahl = sql_query("SELECT Count(*) FROM ".$prefix."_priv_msgs WHERE to_userid=$to_userid");
$qry_sent = "SELECT Count(*) FROM ".$prefix."_priv_msgs_send WHERE from_userid=$uid";
$result_sent = sql_query($qry_sent);
$count_anzahl = sql_fetch_row($result_anzahl);
$countpmsent = sql_fetch_row($result_sent);
if ($countpmsent[0] >= $sentboxsize) {
prvmsgerror(_SENTPMBOXVOLL);
}
if ($count_anzahl[0] >= $inboxsize) {
prvmsgerror(_PMBOXVOLL);
}
//Ende Erweiterung
if(!($arrpostdata["subject"])) {
prvmsgerror(_ERRMSGNOSUBJECT);
}
if (strip_tags($arrpostdata["subject"]) != $arrpostdata["subject"]) {
prvmsgerror(_ERRMSGNOHTMLINSUBJECT);
}
if(!($arrpostdata["image"])) {
prvmsgerror(_ERRMSGNOICON);
}
if(!($arrpostdata["message"])) {
prvmsgerror(_ERRMSGNOMESSAGE);
}
$arrpostdata["message"] = mxAddSlashesForSQL($arrpostdata["message"]);
$arrpostdata["subject"] = mxAddSlashesForSQL(strip_tags($arrpostdata["subject"]));
$qry1 = "INSERT INTO ".$prefix."_priv_msgs (msg_image, subject, from_userid, to_userid, msg_time, msg_text) ";
$qry_msg_sent = "INSERT INTO ".$prefix."_priv_msgs_send (msg_image, subject, to_userid, from_userid, msg_time, msg_text) "; //Gesendete PMs speichern
if (empty($arrpostdata["to_all"])) {
$cookie = mxGetUserSession();
$ignore = sql_query("select ignoreid, uname from ".$user_prefix."_users_ignorelist where uid='".$to_userid."'");
list($ignoreid, $ignorename) = sql_fetch_row($ignore);
if ($ignoreid == $uid) {
list($touser_uname,$touser_email,$user_pm_mail) = sql_fetch_row(sql_query("SELECT uname, email, user_pm_mail FROM ".$user_prefix."_users WHERE uid='$to_userid'", $dbi), $dbi);
$message = "Halle $touser_uname,\nSie haben auf GeceAlem.de eine neue Private Nachricht erhalten.
WICHTIG: Beachten Sie, dass dies nur eine Benachrichtigung ist. Bitte antworten Sie nicht auf diese E-Mail.
Ihre Nachricht können Sie hier abholen:\n http://www.gecealem.de/modules.php?name=Private_Messages\n
=================================================================================
Wenn Sie nicht per Email über neue PN's informiert werden wollen können Sie die Option hier deaktivieren:\nhttp://www.gecealem.de/modules.php?name=Your_Account&op=edithome";
$subject = "Private Nachricht auf GeceAlem.de";
if (!mxIsUserOnline($touser_uname) && ($user_pm_mail ==1))
{
mxMail($touser_email, "$subject", $message, $GLOBALS['adminmail'],"text","PM-Mail");
}
messagesheader($uid);
echo "<table border=\"0\" cellspacing=\"1\" cellpadding=\"3\" width=\"100%\" bgcolor=\"$bgcolor1\">"
."<TR BGCOLOR=\"$bgcolor1\">"
."<TD><br><center>".$ignorename." möchste keine Nachrichten von dir!<br><a href=\"modules.php?name=$module_name\">"._PMSRETURNTOPMSG."</a></center><br /></TD>"
."</TR></table>";
screeshot:
www.gecealem.de/screen.jpg
Hi
Danke für deine großartige IDEE
Habe es so erweitert wie du es beschrieben hast und bei mir klappt es wunderbar.
Eine frage habe ich noch zu diesem Tehma.
Gibt es keine fariable für die url? also http://www.DEINE_DOMAIN.de die man da einsetzen für kann.
$URL/modules.php?name=Private_Messages ?????? oder ist da nichts möglich muss man immer im code umschreiben?
Vieleicht hat ja einer eine IDEE zu.
Besten Dank Chris
Besten DANK Chris
Hallo !
Zitat$URL/modules.php?name=Private_Messages
Wenn Du Scripte auf demselben Server aufrufst, dann brauchst Du ja nicht unbedingt absolut zu referenzieren.
Du könntest ja auch relativ referenzieren. D.H. du bräuchtest das http://www.DeineDomain.de gar nicht angeben, sondern
referenzierst auf modules.php?name=.....
MfG
jubilee
Hallo
Aber hier geht es ja um die E-Mail die der user bekommt da benötigt man schon die ganze URL.
Dachte mir nur das es da eine fariable gibt.
Besten Dank Chris
das kann doch nicht sein,es geht einfach nicht.... :wall:
Muß sagen bei mir kommt auch keine Mail, und bei user_pm_mail steht eine 1 aber keine Mails.
mfg
Onke
Hallo !
ZitatMuß sagen bei mir kommt auch keine Mail, und bei user_pm_mail steht eine 1 aber keine Mails
Mail kommt aber auch nur, wenn der ensprechende User AUSGELOGGT ist, wenn die PM zugestellt wird.
Habt ihr das berücksichtigt ?
MfG
jubilee
ja,habe alles schon so oft ausprobiert...sogar die ganze nacht abgewartet und heute morgen nochmal eine pm gesendet....
Hmmm ....
Hab mal gerad den Code-Abschnitt durchgeehen den Du gespostet hast.
Ist das so im Modul gelistet ?
-->
Zitatif ($ignoreid == $uid) {
list($touser_uname,$touser_email,$user_pm_mail) = sql_fetch_row(sql_query("SELECT uname, email, user_pm_mail FROM ".$user_prefix."_users WHERE uid='$to_userid'", $dbi), $dbi);
$message = "Halle $touser_uname
oder kommt da zwischen
Zitatif ($ignoreid == $uid) {
und
Zitatlist($touser_uname,$touser
noch anderer Code ??
MfG
jubilee
Zitat$ignore = sql_query("select ignoreid, uname from ".$user_prefix."_users_ignorelist where uid='".$to_userid."'");
list($ignoreid, $ignorename) = sql_fetch_row($ignore);
if ($ignoreid == $uid) {
list($touser_uname,$touser_email,$user_pm_mail) = sql_fetch_row(sql_query("SELECT uname, email, user_pm_mail FROM ".$user_prefix."_users WHERE uid='$to_userid'", $dbi), $dbi);
$message = "Halle $touser_uname,\nSie haben auf GeceAlem.de eine neue Private Nachricht erhalten.
WICHTIG: Beachten Sie, dass dies nur eine Benachrichtigung ist. Bitte antworten Sie nicht auf diese E-Mail.
Ihre Nachricht können Sie hier abholen:\n http://www.gecealem.de/modules.php?name=Private_Messages\n
=================================================================================
Wenn Sie nicht per Email über neue PN's informiert werden wollen können Sie die Option hier deaktivieren:\nhttp://www.gecealem.de/modules.php?name=Your_Account&op=edithome";
$subject = "Private Nachricht auf GeceAlem.de";
if (!mxIsUserOnline($touser_uname) && ($user_pm_mail ==1))
{
mxMail($touser_email, "$subject", $message, $GLOBALS['adminmail'],"text","PM-Mail");
}
messagesheader($uid);
echo "<table border=\"0\" cellspacing=\"1\" cellpadding=\"3\" width=\"100%\" bgcolor=\"$bgcolor1\">"
."<TR BGCOLOR=\"$bgcolor1\">"
."<TD><br><center>".$ignorename." möchste keine Nachrichten von dir!<br><a href=\"modules.php?name=$module_name\">"._PMSRETURNTOPMSG."</a></center><br /></TD>"
."</TR></table>";
Du hast den Code an die falsche Stelle der submitmessage eingefügt. Eigentlich sollte dort wo bei Dir messagesheader($uid); steht messagesheader(); stehen - so ist es jedenfalls bei mir. nach der ignore-Geschichte folgt weiter unten dann nochmal das erwähnte
messagesheader($uid); und
dort vor soll der genannte Code eingefügt werden :)
Sorry für die späte Antwort, ichw ar gestern nicht da :)
ich habe da noch zweimal messagesheader($uid); stehen.
ist es so nun richtig?
function submitmessage($arrpostdata, $uid){
include("modules/Private_Messages/inboxsize-conf.php");
global $prefix, $user_prefix, $PHP_SELF, $module_name, $refresh, $bgcolor2;
$uid = (int)$uid;
if(empty($arrpostdata["to_user"]) && empty($arrpostdata["to_all"]) || (!empty($arrpostdata["to_all"]) && !mxIsAdmin())) {
prvmsgerror(_ERRMSGNOUSER);
}
if (empty($arrpostdata["to_all"])) {
$result = sql_query("select uid from ".$user_prefix."_users where uname=\"".mxAddSlashesForSQL($arrpostdata["to_user"])."\"");
list($to_userid) = sql_fetch_row($result);
if (!$to_userid) {
prvmsgerror(_PMSUSERNOTINDB);
}
}
// Milhouse_Erweiterung
$result_anzahl = sql_query("SELECT Count(*) FROM ".$prefix."_priv_msgs WHERE to_userid=$to_userid");
$qry_sent = "SELECT Count(*) FROM ".$prefix."_priv_msgs_send WHERE from_userid=$uid";
$result_sent = sql_query($qry_sent);
$count_anzahl = sql_fetch_row($result_anzahl);
$countpmsent = sql_fetch_row($result_sent);
if ($countpmsent[0] >= $sentboxsize) {
prvmsgerror(_SENTPMBOXVOLL);
}
if ($count_anzahl[0] >= $inboxsize) {
prvmsgerror(_PMBOXVOLL);
}
//Ende Erweiterung
if(!($arrpostdata["subject"])) {
prvmsgerror(_ERRMSGNOSUBJECT);
}
if (strip_tags($arrpostdata["subject"]) != $arrpostdata["subject"]) {
prvmsgerror(_ERRMSGNOHTMLINSUBJECT);
}
if(!($arrpostdata["image"])) {
prvmsgerror(_ERRMSGNOICON);
}
if(!($arrpostdata["message"])) {
prvmsgerror(_ERRMSGNOMESSAGE);
}
$arrpostdata["message"] = mxAddSlashesForSQL($arrpostdata["message"]);
$arrpostdata["subject"] = mxAddSlashesForSQL(strip_tags($arrpostdata["subject"]));
$qry1 = "INSERT INTO ".$prefix."_priv_msgs (msg_image, subject, from_userid, to_userid, msg_time, msg_text) ";
$qry_msg_sent = "INSERT INTO ".$prefix."_priv_msgs_send (msg_image, subject, to_userid, from_userid, msg_time, msg_text) "; //Gesendete PMs speichern
if (empty($arrpostdata["to_all"])) {
$cookie = mxGetUserSession();
$ignore = sql_query("select ignoreid, uname from ".$user_prefix."_users_ignorelist where uid='".$to_userid."'");
list($ignoreid, $ignorename) = sql_fetch_row($ignore);
if ($ignoreid == $uid) {
messagesheader($uid);
echo "<table border=\"0\" cellspacing=\"1\" cellpadding=\"3\" width=\"100%\" bgcolor=\"$bgcolor1\">"
."<TR BGCOLOR=\"$bgcolor1\">"
."<TD><br><center>".$ignorename." möchste keine Nachrichten von dir!<br><a href=\"modules.php?name=$module_name\">"._PMSRETURNTOPMSG."</a></center><br /></TD>"
."</TR></table>";
}else{
$qry1 .= "VALUES ('".$arrpostdata["image"]."', '".$arrpostdata["subject"]."', ".$uid.", ".$to_userid.", now(), '".$arrpostdata["message"]."')";
$qry_msg_sent .= "VALUES ('".$arrpostdata["image"]."', '".$arrpostdata["subject"]."', ".$to_userid.", ".$uid.", now(), '".$arrpostdata["message"]."')";
if(!$result = sql_query($qry1)) {
prvmsgerror(_ERRMSGNOSUBMIT);
}
if ($arrpostdata["notsave"]) {
if(!$result = sql_query($qry_msg_sent)) {
prvmsgerror(_ERRMSGNOSUBMIT);
}
}
list($touser_uname,$touser_email,$user_pm_mail) = sql_fetch_row(sql_query("SELECT uname, email, user_pm_mail FROM ".$user_prefix."_users WHERE uid='$to_userid'", $dbi), $dbi);
$message = "Halle $touser_uname,\nSie haben auf GeceAlem.de eine neue Private Nachricht erhalten.
WICHTIG: Beachten Sie, dass dies nur eine Benachrichtigung ist. Bitte antworten Sie nicht auf diese E-Mail.
Ihre Nachricht können Sie hier abholen:\n http://www.gecealem.de/modules.php?name=Private_Messages\n
=================================================================================
Wenn Sie nicht per Email über neue PN's informiert werden wollen können Sie die Option hier deaktivieren:\nhttp://www.gecealem.de/modules.php?name=Your_Account&op=edithome";
$subject = "Private Nachricht auf GeceAlem.de";
if (!mxIsUserOnline($touser_uname) && ($user_pm_mail ==1))
{
mxMail($touser_email, "$subject", $message, $GLOBALS['adminmail'],"text","PM-Mail");
}
messagesheader($uid);
echo "<table border=\"0\" cellspacing=\"1\" cellpadding=\"3\" width=\"100%\" bgcolor=\"$bgcolor2\">"
."<TR BGCOLOR=\"$bgcolor2\">"
."<TD><br><center>"._PMSMSGPOSTED." ".((isset($i)) ? " (".$i." User)" : "")."<br><a href=\"modules.php?name=$module_name\">"._PMSRETURNTOPMSG."</a></center><br></TD>"
."</TR></table>";
}
}
else {
if (mxIsAdmin()) {
$i = 0;
$result = sql_query("select uid from ".$user_prefix."_users where user_stat=1 AND uid>1");
while(list($to_userid) = sql_fetch_row($result)) {
$qry2 = $qry1." VALUES ('".$arrpostdata["image"]."', '".$arrpostdata["subject"]."', ".$uid.", ".$to_userid.", now(), '".$arrpostdata["message"]."')";
$result2 = sql_query($qry2);
if ($result2) $i++;
}
}
messagesheader($uid);
echo "<table border=\"0\" cellspacing=\"1\" cellpadding=\"3\" width=\"100%\" bgcolor=\"$bgcolor2\">"
."<TR BGCOLOR=\"$bgcolor2\">"
."<TD><br><center>"._PMSMSGPOSTED." ".((isset($i)) ? " (".$i." User)" : "")."<br><a href=\"modules.php?name=$module_name\">"._PMSRETURNTOPMSG."</a></center><br></TD>"
."</TR></table>";
}
echo "<META http-equiv=\"Refresh\" content=\"".((isset($i)) ? ($refresh*4) : $refresh).";URL=modules.php?name=$module_name\">";
}
es funktioniert wenn man über das profil eine nachricht schickt,aber bei mir nutzen die user am meisten den button pm der über den messenger läuft,
da funktioniert es nicht
Ja, so habe ich den Code bei mir auch eingebunden.
Welchen Button im Messanger meinst Du? Bin etwas verwirrt ...
man kann ja über den messenger mails versenden in der gesamten userliste aber auch im profil gibt es einen button mit pm drauf,dadurch öffnet sich ja auch das messenger fenster
dann mußt du den Code von Juliet auch in die Buddy.php einbauen.
vorzugsweise an die Stelle wo die PM gesendet werden soll :)
habe es ausprobiert,funktioniert nicht,an welche stelle müsste es und muss da noch was am code geändert werden?
function sendm($to, $to_userid, $msg_text, $subject, $notsave) {
global $bgcolor1, $bgcolor2, $textcolor1, $textcolor2, $prefix, $user_prefix;
$subject = strip_tags($subject);
if (!$subject) $subject= _PMSFROM." ".$GLOBALS["userinfo"]["uname"]."";
$subject = mxAddSlashesForSQL($subject);
$msg_text = mxAddSlashesForSQL($msg_text);
$sql = "INSERT INTO ${prefix}_priv_msgs (msg_image, subject, from_userid, to_userid, msg_time, msg_text) ";
$sql_msg_sent = "INSERT INTO ${prefix}_priv_msgs_send (msg_image, subject, to_userid, from_userid, msg_time, msg_text) ";
$sql .= "VALUES ('".$GLOBALS["subjectdefaulticon"]."', '$subject', '".$GLOBALS["userinfo"]["uid"]."', '$to_userid', now(), '$msg_text')";
$sql_msg_sent .= "VALUES ('".$GLOBALS["subjectdefaulticon"]."', '$subject', '$to_userid', '".$GLOBALS["userinfo"]["uid"]."', now(), '$msg_text')";
$ignore = sql_query("select ignoreid, uname from ".$user_prefix."_users_ignorelist where uid='".$to_userid."'");
list($ignoreid, $ignorename) = sql_fetch_row($ignore);
if ($ignoreid == $GLOBALS["userinfo"]["uid"]) {
create_headerforall(_PMSTITLE);
create_bodyforall();
echo "<br><center>".$ignorename." möchste keine Nachrichten von dir!<br />"
."</TR></table>";
create_footerforall();
}else{
if($to_userid && $msg_text){
$result=sql_query($sql);
if ($notsave) { sql_query($sql_msg_sent); }
}
if(empty($result)){
$msg= "<br>\n<b><br>"._PMSBUDDYERROR."</b><br>\n<br>\n\n";
$timeout=15000;
}
else{
$msg= "<br>\n<br>\n<b>"._PMSSENDED1." $to "._PMSSENDED2."</b><br>\n<br>\n\n";
$timeout=1000;
}
create_headerforall(_PMSTITLE);
create_bodyforall();
echo "<br>\n<br>\n";
echo "<table width=\"100%\" border=\"0\" cellspacing=\"1\" cellpadding=\"0\" bgcolor=\"$bgcolor1\"><tr>\n<td align=\"center\">\n";
echo "<table width=\"100%\" border=\"0\" cellspacing=\"1\" cellpadding=\"3\" bgcolor=\"$bgcolor2\">\n";
echo "<tr>\n<td align=\"center\">\n$msg";
echo "<a href=\"javascript:window.close()\" onClick='window.close()'><img src=\"".$GLOBALS["url_button"]."/schliessen.gif\" border=0 width=\"102\" height=\"20\" style=\"background-color: transparent;\"></a><br>\n<br>\n\n";
echo "<font class=\"tiny\">"._PMSAUTOCLOSE."</font><br>\n<br>\n\n";
echo "<script language=\"JavaScript\">\n";
echo " <!--\n";
echo " setTimeout(\"self.close()\", $timeout);\n";
echo " // -->\n";
echo " </script>";
echo "</td>\n</tr>\n</table>\n</td>\n</tr>\n</table>\n";
create_footerforall();
}
}
Nein, nein, nein, ich kann Euch nicht folgen. Was ist genau der Messagner in Euren Augen?
Es gibt das Modul "Private Messages" - wenn ich darüber eine PN sende erhält der Efänger eine Emai, soweit er nicht online ist.
Desweiteren habe ich noch die Möglichkeit über das Pop-Up eine PN zu senden. Das Pop-Up öffnet sich über Klick auf den User in der Onlineliste ... wenn ein user in der Onlineliste steht ist er onlne und erhält folglich eh keine Email ... nun erklärt mir daher bitte nochmal genau wo der unterschied zwischen Messanger in der Userliste und Messenger im Profil liegt. Beides führt zum Modul Private Messages und nuzt die index.php.
Wenn ich mich recht entsinne wird die buddy.php doch nur für Versand über Pop_Up genutzt - or not?
habe es nun,funktioniert alles....
also:
über die normale index.php ist ja alles klar...
...aber man kann auch den buddy öffnen und die userliste aufrufen,der user die nicht online sind...und man hat im profil der user den button pm wo sich auch das message fenster des buddys öffnet...
andere frage noch juliet????
ich kann bei deinem text in der index nichts hinzufügen an zeilen z.b. wo man auch das passwort neu anfordern kann ???? verstehe ich nicht.
Hm, wieso geht das nicht?
$message = "Halle $touser_uname,\nSie haben auf GeceAlem.de eine neue Private Nachricht erhalten.
WICHTIG: Beachten Sie, dass dies nur eine Benachrichtigung ist. Bitte antworten Sie nicht auf diese E-Mail.
Ihre Nachricht können Sie hier abholen:\n http://www.gecealem.de/modules.php?name=Private_Messages\n
=================================================================================
Wenn Sie nicht per Email über neue PN's informiert werden wollen können Sie die Option hier deaktivieren:\nhttp://www.gecealem.de/modules.php?name=Your_Account&op=edithome\n
=================================================================================
Und hier zum Beispiel noch mehr Text und Links";
und wieso geht das nicht?
Nun klappt alles wunderbar
danke an alle
Mit der Hilfe von Liu-Kang hab ich noch einen kleinen Fehler meinerseits festgestellt.
Und zwar habe ich vergessen zu erwähnen, dass in der edithome.php unter die Zeile:
$userinfo["user_pm_poptime"]= (empty($userinfo["user_pm_poptime"])) ? 0 : (int)$userinfo["user_pm_poptime"];
noch folgendes drunter muß, sonst kann der User die Option "Benachrichtigen bei neuer PN" nicht deaktivieren bzw aktivieren:
$userinfo["user_pm_mail"]= (empty($userinfo["user_pm_mail"])) ? 0 : 1;
Hoffe das wars jetzt. Bitte alle die den Code eingebaut haben nochmal prüfen ob man die Option auch aktivieren/deaktivieren kann.
nicht ganz eigentlich genüg nur das zweite wenn man es in der funktion save_home unterbringt.
Lieber NeMeSiSX2LC,
nun erkläre nochmal bitte was Du meinst für die jenigen, die nicht zwischen den Zeilen lesen können ... wie ich zum Beispiel.
1. "Nur da zweite" -> was ist das Zweite? Die zweite Codezeile die in meinem letzten post steht? Ja, soll ja auch nur die eingefügt werden ... oder was meisnt du?
2. "in der funktion save_home" -> ja, die Stelle die ich angegeben habe ist in der savehome
;D
hi
@ Juliet
es ist doch sehr komisch
es scheinen unterschiedliche version das VKPmX 2.1a im umlauf zu sein !!
alles deine positionen zum einfügen des codes giebt es in meiner version überhaupt nicht.
ich hab es zwar drinn, und es rennt auch, nur an anderen posionen.
also ist es fraglich, ob jeder diese code auch wirklich einbinden kann (ohne erfahrung).
Genau,
Ich habe es bei mir eingefügt rennen tut es nicht.
.
mfg
Onkel
edithome.php die funktion savehome dort mal nach dem suchen
$userinfo["noscore"] = (empty($userinfo["noscore"])) ? 0 : 1;
Darunter einfach das einfügen:
$userinfo["user_pm_mail"] = (empty($userinfo["user_pm_mail"])) ? 0 : 1;
@ NeMeSiSX2LC
Und wo ist jetzt der Unterschied, ob ich es nach
$userinfo["noscore"] = (empty($userinfo["noscore"])) ? 0 : 1;
oder nach
$userinfo["user_pm_poptime"]= (empty($userinfo["user_pm_poptime"])) ? 0 : (int)$userinfo["user_pm_poptime"];
einfüge???
Beides steht in der savehome.php ... ich kann Dir irgendwie nicht folgen.
Interessant wäre hingegen das mit den unterschiedlichen edithome.php Dateien. Die Datei die mir einige User zugeschickt haben enthielten alle die user_pm_poptime Zeile ...
@ onkel
Das ist eine recht geringe Beschreibung was genau nicht funktioniert ... Kommen keine Mails an? Kann der User die Option nicht aktivieren? So weiß auch ich nicht, wo ich ansetzen soll um Dein problem zu lösen.
Also ich habe jetzt alles umgestrickt so wie es hier steht, aber es kommen keine Mails an!
- habe die edithome.php im YA entsprechend geändert
also hier:
echo "<tr valign=\"top\"><td bgcolor=\"$bgcolor2\"><font class=\"content\">"._YA_PMPOPTIME1."</font></td>"
."<td bgcolor=\"$bgcolor3\" colspan=\"2\">"._YA_PMPOPTIME3." <select name=\"user_pm_poptime\">".$options."</select> <span class=\"tiny\">"._YA_PMPOPTIME2."</span></td></tr>";
}
#### hier jetzt der neue Code für die Mail-Checkbox #######
$pn_mail = (empty($userinfo['user_pm_mail'])) ? "" : "checked";
$user_pm_mail = (empty($userinfo["user_pm_mail"])) ? 0 : (int)$userinfo["user_pm_mail"];
echo "<tr valign=\"top\"><td bgcolor=\"$bgcolor2\"><font class=\"content\">Bei neuer PN informieren:</font></td>"
."<td bgcolor=\"$bgcolor3\" colspan=\"2\"><INPUT TYPE=\"CHECKBOX\" NAME=\"user_pm_mail\" VALUE=\"1\" ".$pn_mail."> <span class=\"tiny\">Bei einer neuen PN werden Sie vom System per Email informiert.</span></td></tr>\n";
und hier:
function savehome($userinfo) {
global $user, $cookie, $user_prefix;
if (vkpUserIsThisTheUser($userinfo["uid"])) {
#list($userinfo["storynum"],$userinfo["commentmax"],$userinfo["uid"]) = mxForceInteger($userinfo["storynum"],$userinfo["commentmax"],$userinfo["uid"]); // by AE
list($userinfo["storynum"],$userinfo["uid"]) = mxForceInteger($userinfo["storynum"],$userinfo["uid"]); // by AE
$userinfo["storynum"] = (empty($userinfo["storynum"])) ? $GLOBALS["storyhome"] : $userinfo["storynum"];
$userinfo["commentmax"] = (empty($userinfo["commentmax"])) ? $GLOBALS["commentlimit"] : $userinfo["commentmax"];
$userinfo["theme"] = (empty($userinfo["theme"]) || !@file_exists("themes/".$userinfo["theme"]."/theme.php") || !$GLOBALS["allowchangetheme"]) ? "" : $userinfo["theme"];
$userinfo["user_pm_poptime"]= (empty($userinfo["user_pm_poptime"])) ? 0 : (int)$userinfo["user_pm_poptime"];
$userinfo["user_pm_mail"]= (empty($userinfo["user_pm_mail"])) ? 0 : 1;
- habe die index.php im Modul Private_Message entsprechend geändert
###########################
function submitmessage($arrpostdata, $uid){
include("modules/Private_Messages/inboxsize-conf.php");
global $prefix, $user_prefix, $PHP_SELF, $module_name, $refresh, $bgcolor2;
$uid = (int)$uid;
if(empty($arrpostdata["to_user"]) && empty($arrpostdata["to_all"]) || (!empty($arrpostdata["to_all"]) && !mxIsAdmin())) {
prvmsgerror(_ERRMSGNOUSER);
}
if (empty($arrpostdata["to_all"])) {
$result = sql_query("select uid from ".$user_prefix."_users where uname=\"".mxAddSlashesForSQL($arrpostdata["to_user"])."\"");
list($to_userid) = sql_fetch_row($result);
if (!$to_userid) {
prvmsgerror(_PMSUSERNOTINDB);
}
}
// Milhouse_Erweiterung
$result_anzahl = sql_query("SELECT Count(*) FROM ".$prefix."_priv_msgs WHERE to_userid=$to_userid");
$qry_sent = "SELECT Count(*) FROM ".$prefix."_priv_msgs_send WHERE from_userid=$uid";
$result_sent = sql_query($qry_sent);
$count_anzahl = sql_fetch_row($result_anzahl);
$countpmsent = sql_fetch_row($result_sent);
if ($countpmsent[0] >= $sentboxsize) {
prvmsgerror(_SENTPMBOXVOLL);
}
if ($count_anzahl[0] >= $inboxsize) {
prvmsgerror(_PMBOXVOLL);
}
//Ende Erweiterung
if(!($arrpostdata["subject"])) {
prvmsgerror(_ERRMSGNOSUBJECT);
}
if (strip_tags($arrpostdata["subject"]) != $arrpostdata["subject"]) {
prvmsgerror(_ERRMSGNOHTMLINSUBJECT);
}
if(!($arrpostdata["image"])) {
prvmsgerror(_ERRMSGNOICON);
}
if(!($arrpostdata["message"])) {
prvmsgerror(_ERRMSGNOMESSAGE);
}
$arrpostdata["message"] = mxAddSlashesForSQL($arrpostdata["message"]);
$arrpostdata["subject"] = mxAddSlashesForSQL(strip_tags($arrpostdata["subject"]));
$qry1 = "INSERT INTO ".$prefix."_priv_msgs (msg_image, subject, from_userid, to_userid, msg_time, msg_text) ";
$qry_msg_sent = "INSERT INTO ".$prefix."_priv_msgs_send (msg_image, subject, to_userid, from_userid, msg_time, msg_text) "; //Gesendete PMs speichern
if (empty($arrpostdata["to_all"])) {
$cookie = mxGetUserSession();
$ignore = sql_query("select ignoreid, uname from ".$user_prefix."_users_ignorelist where uid='".$to_userid."'");
list($ignoreid, $ignorename) = sql_fetch_row($ignore);
if ($ignoreid == $uid) {
###Email bei neuer PN wenn User offline ist #####
list($touser_uname,$touser_email,$user_pm_mail) = sql_fetch_row(sql_query("SELECT uname, email, user_pm_mail FROM ".$user_prefix."_users WHERE uid='$to_userid'", $dbi), $dbi);
$message = "Halle $touser_uname,\nDu hast auf biker-unity.de eine neue Private Nachricht erhalten.
WICHTIG: Beachte, dass dies nur eine Benachrichtigung ist. Bitte antworte nicht auf diese E-Mail.
Deine Nachricht kannst Du hier abholen:\n http://www.biker-unity.de/modules.php?name=Private_Messages\n
=================================================================================
Wenn Du nicht per Email über neue PN's informiert werden willst, kannst Du die Option hier deaktivieren:\nhttp://www.biker-unity.de/modules.php?name=Your_Account&op=edithome";
$subject = "Neue private Nachricht auf biker-unity.de";
if (!mxIsUserOnline($touser_uname) && ($user_pm_mail ==1))
{
mxMail($touser_email, "$subject", $message, $GLOBALS['adminmail'],"text","PM-Mail");
}
#######
messagesheader($uid);
echo "<table border=\"0\" cellspacing=\"1\" cellpadding=\"3\" width=\"100%\" bgcolor=\"$bgcolor1\">"
."<TR BGCOLOR=\"$bgcolor1\">"
."<TD><br><center>".$ignorename." möchste keine Nachrichten von dir!<br><a href=\"modules.php?name=$module_name\">"._PMSRETURNTOPMSG."</a></center><br /></TD>"
."</TR></table>";
}else{
$qry1 .= "VALUES ('".$arrpostdata["image"]."', '".$arrpostdata["subject"]."', ".$uid.", ".$to_userid.", now(), '".$arrpostdata["message"]."')";
$qry_msg_sent .= "VALUES ('".$arrpostdata["image"]."', '".$arrpostdata["subject"]."', ".$to_userid.", ".$uid.", now(), '".$arrpostdata["message"]."')";
if(!$result = sql_query($qry1)) {
prvmsgerror(_ERRMSGNOSUBMIT);
}
if ($arrpostdata["notsave"]) {
if(!$result = sql_query($qry_msg_sent)) {
prvmsgerror(_ERRMSGNOSUBMIT);
}
}
messagesheader($uid);
echo "<table border=\"0\" cellspacing=\"1\" cellpadding=\"3\" width=\"100%\" bgcolor=\"$bgcolor2\">"
."<TR BGCOLOR=\"$bgcolor2\">"
."<TD><br><center>"._PMSMSGPOSTED." ".((isset($i)) ? " (".$i." User)" : "")."<br><a href=\"modules.php?name=$module_name\">"._PMSRETURNTOPMSG."</a></center><br></TD>"
."</TR></table>";
}
}
else {
if (mxIsAdmin()) {
$i = 0;
$result = sql_query("select uid from ".$user_prefix."_users where user_stat=1 AND uid>1");
while(list($to_userid) = sql_fetch_row($result)) {
$qry2 = $qry1." VALUES ('".$arrpostdata["image"]."', '".$arrpostdata["subject"]."', ".$uid.", ".$to_userid.", now(), '".$arrpostdata["message"]."')";
$result2 = sql_query($qry2);
if ($result2) $i++;
}
}
messagesheader($uid);
echo "<table border=\"0\" cellspacing=\"1\" cellpadding=\"3\" width=\"100%\" bgcolor=\"$bgcolor2\">"
."<TR BGCOLOR=\"$bgcolor2\">"
."<TD><br><center>"._PMSMSGPOSTED." ".((isset($i)) ? " (".$i." User)" : "")."<br><a href=\"modules.php?name=$module_name\">"._PMSRETURNTOPMSG."</a></center><br></TD>"
."</TR></table>";
}
echo "<META http-equiv=\"Refresh\" content=\"".((isset($i)) ? ($refresh*4) : $refresh).";URL=modules.php?name=$module_name\">";
}
######################################################################
- habe die Zeile in die nuke_users eingefügt
(https://forum.pragmamx.org/proxy.php?request=http%3A%2F%2Fwww.biker-unity.de%2Fimages%2Fiupload%2Fscreenshotpmmail.jpg&hash=9094ec335a520b08476561e14c2eb04cb156e289)
- habe es mit einem ausgeloggten User getestet, bei dem ich in der DB die user_pm_mail auf "1" eingestellt habe
Alles soweit okay....nur die Mail kommt nicht!
*grübel*
Gruß
Bernd
Keinen sieht nur besser aufgeteilt aus wenn das eine in der edithome ist und das andere in der savehome.
Axo wozu wird das hier eigentlich gebraucht?
$user_pm_mail = (empty($userinfo["user_pm_mail"])) ? 0 : (int)$userinfo["user_pm_mail"];
Hab nix in deinem code gefunden wo diese variable braucht.
@ Biker
Du hast den Code an die falsche Stelle in der index.php eingebaut ... weiter unten in der function submitmessage gibt es nochmal ein messagesheader($uid); - und dort muß es vor!
###########################
function submitmessage($arrpostdata, $uid){
include("modules/Private_Messages/inboxsize-conf.php");
global $prefix, $user_prefix, $PHP_SELF, $module_name, $refresh, $bgcolor2;
$uid = (int)$uid;
if(empty($arrpostdata["to_user"]) && empty($arrpostdata["to_all"]) || (!empty($arrpostdata["to_all"]) && !mxIsAdmin())) {
prvmsgerror(_ERRMSGNOUSER);
}
if (empty($arrpostdata["to_all"])) {
$result = sql_query("select uid from ".$user_prefix."_users where uname=\"".mxAddSlashesForSQL($arrpostdata["to_user"])."\"");
list($to_userid) = sql_fetch_row($result);
if (!$to_userid) {
prvmsgerror(_PMSUSERNOTINDB);
}
}
// Milhouse_Erweiterung
$result_anzahl = sql_query("SELECT Count(*) FROM ".$prefix."_priv_msgs WHERE to_userid=$to_userid");
$qry_sent = "SELECT Count(*) FROM ".$prefix."_priv_msgs_send WHERE from_userid=$uid";
$result_sent = sql_query($qry_sent);
$count_anzahl = sql_fetch_row($result_anzahl);
$countpmsent = sql_fetch_row($result_sent);
if ($countpmsent[0] >= $sentboxsize) {
prvmsgerror(_SENTPMBOXVOLL);
}
if ($count_anzahl[0] >= $inboxsize) {
prvmsgerror(_PMBOXVOLL);
}
//Ende Erweiterung
if(!($arrpostdata["subject"])) {
prvmsgerror(_ERRMSGNOSUBJECT);
}
if (strip_tags($arrpostdata["subject"]) != $arrpostdata["subject"]) {
prvmsgerror(_ERRMSGNOHTMLINSUBJECT);
}
if(!($arrpostdata["image"])) {
prvmsgerror(_ERRMSGNOICON);
}
if(!($arrpostdata["message"])) {
prvmsgerror(_ERRMSGNOMESSAGE);
}
$arrpostdata["message"] = mxAddSlashesForSQL($arrpostdata["message"]);
$arrpostdata["subject"] = mxAddSlashesForSQL(strip_tags($arrpostdata["subject"]));
$qry1 = "INSERT INTO ".$prefix."_priv_msgs (msg_image, subject, from_userid, to_userid, msg_time, msg_text) ";
$qry_msg_sent = "INSERT INTO ".$prefix."_priv_msgs_send (msg_image, subject, to_userid, from_userid, msg_time, msg_text) "; //Gesendete PMs speichern
if (empty($arrpostdata["to_all"])) {
$cookie = mxGetUserSession();
$ignore = sql_query("select ignoreid, uname from ".$user_prefix."_users_ignorelist where uid='".$to_userid."'");
list($ignoreid, $ignorename) = sql_fetch_row($ignore);
if ($ignoreid == $uid) {
messagesheader($uid);
echo "<table border=\"0\" cellspacing=\"1\" cellpadding=\"3\" width=\"100%\" bgcolor=\"$bgcolor1\">"
."<TR BGCOLOR=\"$bgcolor1\">"
."<TD><br><center>".$ignorename." möchste keine Nachrichten von dir!<br><a href=\"modules.php?name=$module_name\">"._PMSRETURNTOPMSG."</a></center><br /></TD>"
."</TR></table>";
}else{
$qry1 .= "VALUES ('".$arrpostdata["image"]."', '".$arrpostdata["subject"]."', ".$uid.", ".$to_userid.", now(), '".$arrpostdata["message"]."')";
$qry_msg_sent .= "VALUES ('".$arrpostdata["image"]."', '".$arrpostdata["subject"]."', ".$to_userid.", ".$uid.", now(), '".$arrpostdata["message"]."')";
if(!$result = sql_query($qry1)) {
prvmsgerror(_ERRMSGNOSUBMIT);
}
if ($arrpostdata["notsave"]) {
if(!$result = sql_query($qry_msg_sent)) {
prvmsgerror(_ERRMSGNOSUBMIT);
}
}
###Email bei neuer PN wenn User offline ist #####
list($touser_uname,$touser_email,$user_pm_mail) = sql_fetch_row(sql_query("SELECT uname, email, user_pm_mail FROM ".$user_prefix."_users WHERE uid='$to_userid'", $dbi), $dbi);
$message = "Halle $touser_uname,\nDu hast auf biker-unity.de eine neue Private Nachricht erhalten.
WICHTIG: Beachte, dass dies nur eine Benachrichtigung ist. Bitte antworte nicht auf diese E-Mail.
Deine Nachricht kannst Du hier abholen:\n http://www.biker-unity.de/modules.php?name=Private_Messages\n
=================================================================================
Wenn Du nicht per Email über neue PN's informiert werden willst, kannst Du die Option hier deaktivieren:\nhttp://www.biker-unity.de/modules.php?name=Your_Account&op=edithome";
$subject = "Neue private Nachricht auf biker-unity.de";
if (!mxIsUserOnline($touser_uname) && ($user_pm_mail ==1))
{
mxMail($touser_email, "$subject", $message, $GLOBALS['adminmail'],"text","PM-Mail");
}
#######
messagesheader($uid);
echo "<table border=\"0\" cellspacing=\"1\" cellpadding=\"3\" width=\"100%\" bgcolor=\"$bgcolor2\">"
."<TR BGCOLOR=\"$bgcolor2\">"
."<TD><br><center>"._PMSMSGPOSTED." ".((isset($i)) ? " (".$i." User)" : "")."<br><a href=\"modules.php?name=$module_name\">"._PMSRETURNTOPMSG."</a></center><br></TD>"
."</TR></table>";
}
}
else {
if (mxIsAdmin()) {
$i = 0;
$result = sql_query("select uid from ".$user_prefix."_users where user_stat=1 AND uid>1");
while(list($to_userid) = sql_fetch_row($result)) {
$qry2 = $qry1." VALUES ('".$arrpostdata["image"]."', '".$arrpostdata["subject"]."', ".$uid.", ".$to_userid.", now(), '".$arrpostdata["message"]."')";
$result2 = sql_query($qry2);
if ($result2) $i++;
}
}
messagesheader($uid);
echo "<table border=\"0\" cellspacing=\"1\" cellpadding=\"3\" width=\"100%\" bgcolor=\"$bgcolor2\">"
."<TR BGCOLOR=\"$bgcolor2\">"
."<TD><br><center>"._PMSMSGPOSTED." ".((isset($i)) ? " (".$i." User)" : "")."<br><a href=\"modules.php?name=$module_name\">"._PMSRETURNTOPMSG."</a></center><br></TD>"
."</TR></table>";
}
echo "<META http-equiv=\"Refresh\" content=\"".((isset($i)) ? ($refresh*4) : $refresh).";URL=modules.php?name=$module_name\">";
}
######################################################################
Wenn Du es dort einfügst und natürlich die Option unter "Deine Einstellungen" aktivierst müßte es gehen.
@ NeMeSiSX2LC
Hast Recht, die eine Zeile ist ein Überbleibsel aus dem alten Codegewusel und findet ja später in der function savehome Platz. Kann man also streichen.
Puh dacht schon ich hab was übersehen. Hab mir hier ein Wolf gesucht:-)
@Juliet
Bist ein Schatz :-*...und hattest natürlich Recht! ;) :thumbup:
Vielen Dank...jetzt funzt es! :) :) :)
Lieben Gruß
Bernd
Vielen Dank Juliet, funktioniert alles einwandfrei - und jetzt das berühm-brüchtigte "ABER"
;D wie kann man nen Zeilenumbruch in die Mail einfügen, die die User dann bekommen?
Und dann fällt mir gerade noch ne Funktion ein - kann man das irgendwie machen, das der User nur bei der ersten PM ne mail bekommt und dann erst wieder eine, wenn er in seinem Account war? Wenn jetzt nen Uder viele PMs bekommt, wird der ja mit mails bombadiert.
Gruß
Steff
@ Biker: freut mich ;D
@ Steff
Umbrüche machst Du mit \n
Für Deinen Funktionswunsch müßte man dann aber abspeichern, dass bereits eine Mailbenachrichtigung gesendet wurde - besucht der User seinen Account muß der Wert wieder auf 0 gesetzt werden etc ... Grundsätzlich gilt: geht nicht - gibt's nicht, aber ich halte diese Funktion für nicht sehr sinnvoll. Ein User der sowieso viele PNs bekommt wird wohl auch die Seite regelmäßig besuchen und brauch daher die PN-Benachrichtung eigentlich gar nicht. Außerdem soll ihn die Mail ja gerade wieder auf die Seite "locken" ...
Das mit dem \n als Zeilenumbruch habe ich auch schon probiert, bringt aber nichts.
Bei mir im Outlook werden die Mails als fortlaufender Text angezeigt ohne jeden Zeilenumbruch.
Das dürfte dann wohl eher ein Problem von den Einstellungen im Outlook sein!
Bei mir kommen die Mails nämlich per Outlook im html-Format MIT Zeilenumbruch an!
Empfängst Du die Nachricht als html oder "nur Text"???
....wenn letzeres zutrifft, sieh mal nach, ob Du bei Dir im Outlook
unter Optionen->Einstellungen->E-Mail-Optionen
bei Nachrichtenbehandlung das Häkchen bei "Zusätzliche Zeilenumbrüche in nur Text-Nachrichten entfernen" stehen hast?
Wenn ja, mach es mal raus, und versuch es nochmal.....
Habe ich schon gemacht, werden aber immer noch ohne Zeilenumbrüche angezeigt.
Hi Steff,
nimm aus der Zeile
mxMail($touser_email, "$subject", $message, $GLOBALS['adminmail'],"text","PM-Mail");
einfach mal das "text" raus und guck wie Dein Outlook das dann darstellt :)
Hallo !
Zitat
nimm aus der Zeile
mxMail($touser_email, "$subject", $message, $GLOBALS['adminmail'],"text","PM-Mail");
Das ist nutzlos. Wenn dieses Feld nicht belegt ist, wird automatisch als text-Mail versendet.
Wenn
text oder nix angegeben ist, wird automatisch eine Text-EMail erstellt.
Alternative ist nur, hier anstatt
text html anzugeben.
MfG
jubilee
Versteh ich nicht...bei mir steht dort auch "text" drin, aber die Mail kommt im html-Format an...seltsam!?