wie kann ich postings die gemacht werden als new kennzeichnen
suche Ideeansatz
bsp:
hier hab ich ein forum geschrieben
http://j33d3x.no-ip.org/jbb/forum/index.php
wie kann ich neu geschrieben postings als new kennzeichnen und wenn der jeweilige user es gelesen hat als not new
muss ich mit sessions oder cookies arbeiten ?
User since
2003-08-04
2536
articles
ModeratorIn
gib doch einfach einen link auf das posting aus, in dem als parameter ein timestamp vom letzten post angegeben ist. ist da ein neues thema drin, erscheint der link bei dem besucher normal, wenn er ihn angeklickt hat, wird er zu einem besuchten link und damit kannst du ihn dann mit css formatieren.
User since
2003-08-04
81
articles
BenutzerIn
jo genau
oder halt aus dem cookie last visit timestamp vergleichen aber die variante mit der parameterübergabe ist zu bevorzugen weil du dann die einzelnen Beiträge getrennt bearbeiten kannst\n\n
<!--EDIT|Cooly|1073781198-->
User since
2003-11-13
15
articles
BenutzerIn
danke für die antworten
da ich als neu mit einem anderen Image anzeige und ohne cookies sowie sessions auskommen wollte habe ich mich für eine andere Variante entschieden
ich habe für jeden reg. user ein array angelegt bs.:
"1" => "timestamp",
"2" => "timestamp" usw. die Zahl ( key ) bedeutet das Thema der timestamp ist der letzte Besuch des Themas
jetzt hat jedes Thema auch ein Timestamp des letzten Beitrages
nun wird verglichen zwischen Usertimestamp und Thematimestamp
beim Besuch eines Themas wird der Timestamp des Users aktualisiert
wenn man alle als gelesen markieren will braucht man nur alle timestamp des users auf aktuelle time(); setzen
gruß
User since
2003-08-04
5246
articles
ModeratorIn
Fuers neue Forum mache ich es
folgendermaszen (12.01.2004, 12:00).
User since
2003-11-13
15
articles
BenutzerIn
hier mal mein auszug
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
function &makeasread($athr, $aunick) {
global $root;
$dbconnect = $root->con();
$globaluser = new user();
$ts = time();
$zru = $globaluser->zeilen_reg_user();
$rulr = mysql_query("select * from reg_user where reg_nick = '".$aunick."'");
$c = 0;
while(($rows = mysql_fetch_array($rulr)) && $c < $zru) {
$lastreadarray = $rows['lastread'];
if(empty($lastreadarray)) {
$lastreadarray = "\"$athr\" => \"$ts\"";
$ac = mysql_query("update reg_user set lastread = '".$lastreadarray."' where reg_nick = '".$aunick."'");
return TRUE;
exit;
}
if(!empty($lastreadarray)) {
eval("\$lastreadarray = array(".$lastreadarray.");");
foreach($lastreadarray as $key => $elem) {
if($key != $athr) {
if(empty($newlastreadarray)) {
$newlastreadarray .= "\"$key\" => \"$elem\"";
}
if(!empty($newlastreadarray)) {
$newlastreadarray .= ", \"$key\" => \"$elem\"";
}
}
}
if(!empty($newlastreadarray)) {
$newlastreadarray = $newlastreadarray.", \"$athr\" => \"$ts\"";
$ac = mysql_query("update reg_user set lastread = '".$newlastreadarray."' where reg_nick = '".$aunick."'");
return TRUE;
exit;
}
if(empty($newlastreadarray)) {
$newlastreadarray = "\"$athr\" => \"$ts\"";
$ac = mysql_query("update reg_user set lastread = '".$newlastreadarray."' where reg_nick = '".$aunick."'");
return TRUE;
exit;
}
}
}
}
sorry falls es etwas wüst ist aber ich lerne erst seit ca. 3 wochen php
gruss
J33d3X