06. juli 2011 - 13:03
Der er
3 kommentarer og
1 løsning
Private Message - Læst/Ulæst
Hej Drenge og piger, damer og herre.
Jeg er i gang med at lave et PM system i PHP.
Hvor jeg, som overskriften fortæller, godt kunne tænke mig, at man skal kunne se om beskeden er læst/ulæst. Men jeg er ikke helt klar over, hvordan kan jeg gør dette.
Min db er i øjeblikket:
id, to, from, header, content, timestamp.
Jeg kunne forestille mig, at jeg nok skulle have et til felt med: status, eller noget, hvor DEFAULT er no/0 og hvis den ER læst skal den vel bare være yes/1?
Meeen, hvordan laver jeg dette i min kode? Skal man lave en onClick function der slår status i min DB til yes/1, eller hvordan?
mvh.
LilleUdvikler.
Jeg forestiller mig at du får et dokument eksempelvis post.php, denne side vil blive kaldt med en POST parameter ala: post.php?mid=9854268
denne side skal så, i et design, fremvise den besked der er tale om. I så fald kunne du gøre det på følgende måde:
session_start();
$UNREAD = 0;
$READ = 1;
$DELETED = 2;
$mid = $_POST['mid'];
$user_id = $_SESSION['user_id'];
$sql = "SELECT * FROM message WHERE to=$user_id AND id=$mid";
$result = mysql_query($sql) or die(mysql_error());
$row = mysql_fetch_array($result);
if($row['status'] == $UNREAD) {
$sql = "UPDATE messsage SET status=$READ WHERE mid=$mid";
mysql_query($sql) or die(mysql_error());
}
og dernæst viser du blot beskeden sådan som du vil.
Jeg har faktisk gjort det på stort set samme måde, som du har gjort her Danco. Før jeg så dit indlæg. Så det er jo perfekt :-)
Gider du ikke være sød, at lægge et svar, så du kan få nogle point? :-)