slippern Skrevet 7. august 2007 Del Skrevet 7. august 2007 Hvordan får jeg sånn at visst en bruker skriver i gjesteboken til en annen bruker.. så skal det komme opp på brukermenyen til den som inlegget ble sendt til skal det stå " du har 1 ny innlegg i gjesteboken. eller du har 2 nye innlegg i gjesteboken, eller 3, 4 osv osv... Lenke til kommentar
jeg_lyver_mye Skrevet 7. august 2007 Del Skrevet 7. august 2007 Vi må nesten få vite mer om systemet ditt. Men prinsippet er vel ikke så vansklig. I tabellen for gjestebok innlegg så har du en kolonne kalt "lest". Også teller du da: SELECT COUNT(1) AS `antall` FROM `gjestebok` WHERE `userid` = HANBRUKERID AND `lest` = 0 0 = ikke lest 1 = Lest Lenke til kommentar
slippern Skrevet 7. august 2007 Forfatter Del Skrevet 7. august 2007 (endret) Klikk for å se/fjerne innholdet nedenfor <?php if(isset($_SESSION['username'])) { $id = mysql_real_escape_string( $_GET['id'] ); $bruker = mysql_query("SELECT * FROM brukere WHERE id ='$id'"); while($row = mysql_fetch_object ($bruker)) { echo "<a href='index.php?side=profil&id=$id'>Profil</a> <a href='index.php?side=gjestebok&id=$id'>Gjestebok</a><br /> <br />"; $brukernavn = $row->username; echo "<h3>Gjesteboken til $brukernavn</h3><br /><br />"; } $minidd = mysql_query("SELECT * FROM brukere WHERE username ='{$_SESSION['username']}'"); while($row = mysql_fetch_object ($minidd)) { $idd = $row->id; } // HER KOMMER SKRIPTET INN // ####################### $q_a = mysql_query("SELECT COUNT(*) AS antall FROM gjestebok WHERE uid ='{$id}'"); $r_a = mysql_fetch_assoc($q_a); $antall_emner = $r_a["antall"]; unset($q_a,$r_a); $offset = $_GET["offset"]; $offset = (empty($offset) || !is_numeric($offset) || $offset < 0 || $offset >= ($antall_emner)) ? 0 : $offset; // ############################## // HER SLUTTER SIDE-TALL SKRIPTET $gjestebok_sql = "SELECT * FROM gjestebok WHERE uid ='$id' ORDER BY time DESC LIMIT {$offset},10"; // Her Fiksa jeg SQL med en liten LIMIT smile.gif $gjestebok = mysql_query($gjestebok_sql); while($row = mysql_fetch_object ($gjestebok)) { $fra = $row->fraid; $ids = $row->id; $uid = $row->uid; $svar = $row->svinlegg; echo " <table border='0' > <tr> <td>Fra: <a href='index.php?side=profil&id={$row->fraid}'>{$row->fra}</a> </td> <td>{$row->dato} {$row->time}<br /> </td> </tr> <tr> <td> <a href='index.php?side=profil&id={$row->fraid}'> <img src='user/{$row->fraid}.jpg' alt='{$row->fraid}' width='80' height='80'></a></td> <td> {$row->innlegg}"; if($id == $idd) if (empty($svar)) { echo "<br /><br /><a href='index.php?side=gjestebok_svar&id=$ids&uid=$fra'>Kommenter</a>";} else echo "<br /><h4>Kommentar</h4> $svar"; echo " </td> </tr></table><br />"; } // HER KOMMER SKRIPTET INN // ####################### if($offset > 0){ if($offset < 10) $forrige = 0; else $forrige = $offset - 10; echo "<a href='index.php?side=gjestebok&id=$id&=offset=$forrige'>Forrige side</a>"; } $k = 1; for($i=0;$i<$antall_emner;$i+=10){ echo "<a href='index.php?side=gjestebok&id=$id&offset=".$i."'>$k</a>"; echo " \n"; $k++; } echo str_repeat(" ",1) . "\n"; if( ($offset+10) <= ($antall_emner)){ echo "<a href='index.php?side=gjestebok&id=$id&offset=".($offset + 10)."'>Neste side</a>"; } // ############################## // HER SLUTTER SIDE-TALL SKRIPTET ?> <?php if($id != $idd){ ?> <form action="" method="post"> <textarea name="skriv" cols="40" id="skriv" rows="5" /><br /> <input type="submit" name="submit" value="Svar"> <?php } $till = mysql_query("SELECT * FROM brukere WHERE id ='$id'"); while($row = mysql_fetch_object ($till)) { $til = $row->username; } $min = mysql_query("SELECT * FROM brukere WHERE username ='{$_SESSION['username']}'"); while($row = mysql_fetch_object ($min)) { $mittbrukernavn = $row->username; $minid= $row->id; } $skriv = $_POST["skriv"]; if(isset($_POST[submit])) { if(!empty($skriv)){ $til = $til; $innlegg = $_POST["skriv"]; $fra = $_SESSION['username']; $time = date("j-n-Y H:i:s"); $fraid = $minid; $uid = $id; $request = "INSERT INTO gjestebok (til, innlegg, fra, time, fraid, uid) VALUES ('$til', '$innlegg', '$fra', '$time', '$fraid','$uid')"; $results = mysql_query($request); if (mysql_errno( )) echo mysql_error(); if(mysql_affected_rows()) if($results) { header("Location: index.php?side=gjestebok&id=$id"); echo "<br />Gjestebok innlegget ble lagret"; } } else { echo ""; } } } ?> Her er da hele gjestebok koden Endret 7. august 2007 av slippern Lenke til kommentar
ZoRaC Skrevet 8. august 2007 Del Skrevet 8. august 2007 (endret) Utvid tabellen "gjestebok" med et felt kalt "lest" (enum 'y', 'n'), default 'n'. PHP $result = mysql_query("SELECT COUNT(1) AS `antall` FROM `gjestebok` WHERE `uid` = HANBRUKERID AND `lest` = 'n'"); $row = mysql_fetch_object ($result); $antall = $row->antall; echo "Du har $antall nye innlegg i gjesteboka"; Edit: For å merke gjesteboken som lest: PHP if($id == $idd) { mysql_query("UPDATE gjestebok SET lest='n' WHERE uid=$idd); } Endret 8. august 2007 av ZoRaC Lenke til kommentar
slippern Skrevet 8. august 2007 Forfatter Del Skrevet 8. august 2007 har gjort det. i går kveld hehe.. standard er 0 som står for ulest, 1 står folk lest. men hvordan bli php kodingen? $lest = $row->lest; if($lest == 0) echo " du har et nytt gjestebok innlegg"; den der fungerer ikke helt. pga at den henter ut alle innleggene med brukernavnet til session. og da henter den også ut alle tallene som ligger i raden lest. som blir feks 011111.. hvordan kan jeg dele opp alle tallene. siden 0 ikke er identisk med 01111.. forstår? Lenke til kommentar
ZoRaC Skrevet 8. august 2007 Del Skrevet 8. august 2007 (endret) Se posten min... $result = mysql_query("SELECT COUNT(1) AS `antall` FROM `gjestebok` WHERE `uid` = HANBRUKERID AND `lest` = 0"); $row = mysql_fetch_object ($result); $antall = $row->antall; echo "Du har $antall nye innlegg i gjesteboka"; Endret 8. august 2007 av ZoRaC Lenke til kommentar
slippern Skrevet 8. august 2007 Forfatter Del Skrevet 8. august 2007 ahh.. når jeg gikk igjennom koden litt mere så forstod jeg plutselig alt hihi Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå