Bug in Rundmail

Begonnen von David555, 29 Oktober 2007, 17:22:38

⏪ vorheriges - nächstes ⏩

0 Mitglieder und 1 Gast betrachten dieses Thema.

David555

Tag,

wenn ich als Admin eine Rundmail verschicke, dann zeigt es mir im Ordner Postausgang alte Nachrichten, die schon gelesen wurden, als nicht gelesen an.

Das ist sehr komisch, da in der DB unter read_msg ne 1 steht.

Servus
Wer aufräumt ist zu faul zum suchen!

GerhardSt

Hi David555,

ich habe mir das gerade angesehen.
Das selbe passiert auch wenn man zwischendurch mal eine Nachricht ohne speichern im Postausgang verschickt. Dann sind alle um eins verschoben.

Ich glaube das muß noch eine zusätzliche Abfrage rein, wie z.B. msg_time
Nur da scheitere ich wieder mal an meinen SQL-Kentnissen.
Ich habe es mal versucht und in der index.php ab Zeile 788
//Nachrichten ungelesenen auslesen für "pix" ----->
$select1 = "SELECT * FROM ${prefix}_priv_msgs "
$where1 = "where from_userid = $uid ";
$sort1 = "order by msg_time"; //sorty by .....
$result_read_msg = sql_query($select1 . $where1 . $sort1 . $limit); # or die(); // Now lets do it !!
//<----- bis hier
mal das gemacht
//Nachrichten ungelesenen auslesen für "pix" ----->
$select1 = "SELECT ${prefix}_priv_msgs.* "
         . "FROM ${prefix}_priv_msgs LEFT JOIN ${prefix}_priv_msgs_send ON ${prefix}_priv_msgs.msg_time = ${prefix}_priv_msgs_send.msg_time ";
$where1 = "where from_userid = $uid ";
$sort1 = "order by msg_time"; //sorty by .....
$result_read_msg = sql_query($select1 . $where1 . $sort1 . $limit); # or die(); // Now lets do it !!
//<----- bis hier

Nur irgendwo ist da ein Fehler drinn

Gruß Gerhard

GerhardSt

Hallo,

ich habe bereits einiges versucht, doch leider ohne Erfolg.
Hat von euch keiner eine Idee, wie man das lösen könnte?
Eine zusätzliche Abfrage mit msg_time würde reichen, da ja ein und der selbe User nicht zur selben Zeit, zwei PM´s versenden kann. Ausser man ist Admin und sendet eine an alle User, aber dort habe ich das speichern für den Postausgang gar nicht eingebaut. Müsste also funktionieren :gruebel:

Danke für eure Hilfe, Gerhard

GerhardSt

Hallo,

hat keiner eine Idee wie man diesen Fehler beheben kann?
Das im vorherigen Post von mir ist ja nur eine Vermutung, wenn wer einen anderen Lösungsvorschlag hat, nur her damit. Vielleicht ist der ja leichter umzusetzen ;)

Gruß Gerhard

Eismann1976

Also ich hab jetzt den halben Abend versucht mit meinen zugegeben rudimentären Kentnissen daran rumzudoktern.
Leider ohne Erfolg.  :red:
LG Eismann


Kein Support per PN/ICQ/MSN ect.
Bitte schreibt eure Frage ins Forum, so haben Alle was von der Antwort.
Viele Antworten findest du auch im DOKUWIKI



http://www.wtj-clan.de | pragmaMx 0.1.11.2 &  1.12 RC2 | PHP: 5.2.9 | mysql: 5.1.33 | apache: 2.2.11 (Win32) & Microsoft-IIS/7.5

GerhardSt

Schade das hier keiner ein Lösung für das Problem hat. :red:

Dann bleibt uns woll nichts anderes übrig, als mit diesem Fehler zu leben oder wir verzichten auf die Anzeige.

Eismann1976

Gerhard lass uns dass zurückstellen. Im Moment kommen wir hier allein nicht weiter.
LG Eismann


Kein Support per PN/ICQ/MSN ect.
Bitte schreibt eure Frage ins Forum, so haben Alle was von der Antwort.
Viele Antworten findest du auch im DOKUWIKI



http://www.wtj-clan.de | pragmaMx 0.1.11.2 &  1.12 RC2 | PHP: 5.2.9 | mysql: 5.1.33 | apache: 2.2.11 (Win32) & Microsoft-IIS/7.5

GerhardSt

Hallo Eismann,

was verstehst du unter zurückstellen?

Ausbauen oder lassen?

Ich möchte wirklich gerne mal die neue Version hochladen, nur mit bekannten Fehlern ist das immer so eine Sache :red:

Andi

HiHo :)

sorry Leute, dass ich euch so hängen lasse...  :red:

Lasst mal jetzt ein paar Tage die 0.1.10 im Betatest anlaufen, dann habe ich wieder etwas mehr Luft, so dass wir da nochmal gemeinsam drüberschauen.
Wir müssen ja eh checken, wie das alles noch zur 0.1.10 passt ;)
schön´s Grüssle, Andi

GerhardSt

Danke, Andi!

Jetzt kommt es auf die paar Tage auch nicht mehr drauf an.

Mit dem checken muß ich dir recht geben, da hat sich sicher was geändert ;)

Eismann1976

Ich hätte den Fehler erstmal drin gelassen und ausdrücklich in der Readme drauf hingewiesen.

Aber die paar Tage hat es nun auch noch Zeit. Schließlich ist das Modul noch in der Beta und hier im Forum ist der Fehler ja dokumentiert.
LG Eismann


Kein Support per PN/ICQ/MSN ect.
Bitte schreibt eure Frage ins Forum, so haben Alle was von der Antwort.
Viele Antworten findest du auch im DOKUWIKI



http://www.wtj-clan.de | pragmaMx 0.1.11.2 &  1.12 RC2 | PHP: 5.2.9 | mysql: 5.1.33 | apache: 2.2.11 (Win32) & Microsoft-IIS/7.5

David555

Ich habe folgende Lösung gefunden:

Folgende Zeilen in der index.php löschen:
Zeile 787 bis 794, diese hier:

//Nachrichten ungelesenen auslesen für "pix" ----->
//$select1 = "SELECT ${prefix}_priv_msgs.* "
//         . "FROM ${prefix}_priv_msgs LEFT JOIN ${prefix}_priv_msgs_send ON ${prefix}_priv_msgs.msg_time = ${prefix}_priv_msgs_send.msg_time ";
$select1 = "SELECT * FROM ${prefix}_priv_msgs ";
$where1 = "where from_userid = $uid ";
$sort1 = "order by msg_time"; //sorty by .....
$result_read_msg = sql_query($select1 . $where1 . $sort1 . $limit); # or die(); // Now lets do it !!
//<----- bis hier


Dann diese Anweisung suchen: (ACHTUNG! Davon gibt es zwei, die in Zeile 800 - 830 ist richtig)

while ($row = sql_fetch_array($result)) {

unter dieser Zeile das hier einfügen:


//Nachrichten ungelesenen auslesen für "pix" ----->
$pm_uhrzeit = $row["msg_time"];
$select1 = "SELECT * FROM ${prefix}_priv_msgs ";
$where1 = "where msg_time = '$pm_uhrzeit'";
$result_read_msg = sql_query($select1 . $where1);
//<----- bis hier


Ich hab das auf meinem Testsystem mal getestet und soweit funktioniert es.
Auf meinem Testsystem sind alle UPDATES installiert, also auf dem aktuellen Stand.

Ich habe die aktuelle index.php mit diesen Schritten umgeändert.
Diese könnt ihr in modules/Private_Messages/ kopieren.
Wer aufräumt ist zu faul zum suchen!

GerhardSt

Hallo David555,

finde ich super, das du auch versuchst das Problem zu lösen :thumbup:

Leider funktioniert deine Lösung auch nicht korrekt.
Ich habe gerade mal ein Rundmail verschickt und dann bei mir und bei einem anderen User den kompletten Posteingang geleert. Nun wird mir im Postausgang angezeigt, das keine einzige PM gelesen wurde.

Schade! :red:

Gruß Gerhard

David555

Man probierts halt  ;)

Habe gerade auch eine Rundmail verschickt und danach meinen Posteingang (_priv_msgs) geleert.
Bei mir zeigt es dann im Postausgang an, dass alle PM's gelesen wurden. Was ja auch verständlich ist, da die Dateien ja nicht mehr verfügbar sind, um sie abzugleichen.

Kannst du diese index.php Datei noch einmal probieren?
Wer aufräumt ist zu faul zum suchen!

GerhardSt

Hallo David555,

ich glaube das wars :thumbup:
Ich kann zumindest keinen Fehler mehr feststellen!
Mal sehen was die anderen dazu sagen!

Wenn nichts negatives kommt, kommt Version 2 in die Downloads ;)
Also bitte an alle, testen und hier melden!

Gruß Gerhard