Avatar billede LilleUdvikler Nybegynder
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.
Avatar billede rix Novice
06. juli 2011 - 15:14 #1
jeg har gjort det ved mit eget at jeg har en som du selv siger en felt der kan hede status som man smider 1 i eller en anden fast værdi i som skal fortælle at brugren ikke har set den
når brugeren så har læst den opdatere man status til F.eks 2 som fortæller at man har læst beskeden
Avatar billede danco Nybegynder
07. juli 2011 - 06:54 #2
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.
Avatar billede LilleUdvikler Nybegynder
08. juli 2011 - 11:03 #3
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? :-)
Avatar billede danco Nybegynder
08. juli 2011 - 13:17 #4
Svar :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester