Seite 2 von 2

Verfasst: 23.09.2005 21:47
von Markus67
steffi1977 hat geschrieben:wo setzt man den den code ein udn was bewirkt der jetzt direkt ???

Ich habe meinen code so :
<a href="{U_PRIVATEMSGS}" class="mainmenu"><img src="{PRIVMSG_IMG}" width="13" height="13" border="0" alt="{PRIVATE_MESSAGE_INFO}" hspace="3" /><b>{PRIVATE_MESSAGE_INFO}</b></a>
Der Code bewirkt diese Anzeige ...
Keine neuen Nachrichten | Du hast keine ungelesenen Nachrichten
Die werden also auch die ungelesenen Nachrichten angezeigt.

Du kannst das ganze in die overall_header.tpl setzen.

Markus

Verfasst: 24.09.2005 10:51
von makue
Also, für die Korrektur der "ungelesenen Nachrichten" habe ich in die privmsg.php nach "// start main" folgendes eingebaut:

Code: Alles auswählen

	$sql = "SELECT u.user_id AS user_id_1, u2.user_id AS user_id_2, u.user_from, pm.*
		FROM " . PRIVMSGS_TABLE . " pm, " . PRIVMSGS_TEXT_TABLE . " pmt, " . USERS_TABLE . " u, " . USERS_TABLE . " u2 
		WHERE pmt.privmsgs_text_id = pm.privmsgs_id 
			AND pm.privmsgs_to_userid = " . $userdata['user_id'] . " 
			AND pm.privmsgs_type = " . PRIVMSGS_UNREAD_MAIL . "
			AND u.user_id = pm.privmsgs_from_userid 
			AND u2.user_id = pm.privmsgs_to_userid";
	if (!($result = $db->sql_query($sql))) message_die(GENERAL_ERROR, 'Could not query private message post information', '', __LINE__, __FILE__, $sql);
	$unread_msg = mysql_num_rows($result);
	$sql = "UPDATE ".USERS_TABLE." SET user_unread_privmsg = ".$unread_msg." WHERE user_id = " . $userdata['user_id'];
	if (!$db->sql_query($sql)) message_die(GENERAL_ERROR, 'Could not update private message new/read status for user', '', __LINE__, __FILE__, $sql);
Auf der Index-Seite habe ich nun links auch stehen, wieviel ungelesene und wieviel neue PNs es gibt. Auch auf der PN-Seite selbst habe ich über der Tabelle deutlich hervorgeheben "Du hast x ungelesene Nachrichten". Nun bin ich zufrieden! :wink: Anmerkung: die Variablen nach SELECT hätte man sicher auch weglassen können.