08. juni 2006 - 18:28Der er
9 kommentarer og 1 løsning
Tagwall funktion
Hej.. I min tagwall havde jeg tænkt mig, at man med "kommandoen" /smid kan smide nogle af sine point, f.eks. /smid 1234. Derefter kommer der et link, hvor man kan samle dem op. Og hvis de er samlet op én gang, så kan man ikke mere. Hvordan laver jeg det?
Jeg tror nu nok hellere jeg ville lave det som et lille input felt ved siden af beskeden, hvor du så lavede:
SMID POINT: <input type="text" value="point"> Det gemmer du så i en database, f.eks. skal du jo gemme ID på brugeren, hvor mange point der er tale om, og evt en modtager af pointene. Hvis point endnu ikke er taget, kunne modtager ID var = NULL. Hvis modtager ID = 27, så har bruger med ID 27 tager pointene, og der er ikke et link til at tage dem længere.
Du har vel allerede en funktion som smider noget data i en database ikke? Der skal din form så udbygges med et ekstra felt, som jeg skrev før: SMID POINT: <input type="text" value="point"> Og så er det blot at oprette en ekstra tabel til at varetage pointene.
<?php $q3 = mysql_query("select * from community_brugere where brugernavn = '$_SESSION[Brugernavn]'"); $bruger = mysql_fetch_array($q3);
$point_con = mysql_query("SELECT * FROM community_post WHERE id = id = '". $_GET['id'] ."'"); $point = mysql_fetch_array($point_con); ?>
<?php if($_GET['smid'] == "ja"){ if($point['status'] == "inaktiv"){ print "Pointene er samlet op!"; if($point['status'] == "aktiv"){ mysql_query("UPDATE community_poing SET status = 'inaktiv', modtager = '$_SESSION[Brugernavn] WHERE id = '". $_GET['id'] ."'"); print "Du har nu samlet pointene op!"; } }}
<?php if(preg_match('/\/smid\\s(\\d+)/i', htmlentities($tagwall['besked']), $match)){ $point = $match[1]; if($bruger[point] < $point) { print "<b class=\"red\">Du har ikke nok point!</b>"; }else{ $monter = $bruger[point]; $minus = $monter-$point; mysql_query("UPDATE community_brugere SET point = '$minus' WHERE brugernavn = '$_SESSION[Brugernavn]'"); // Sætter de point der er tilbage ind.. mysql_query("INSERT INTO community_point SET afsender = '$_SESSION[Brugernavn]', point = '$point', status = 'aktiv'"); // De point, der er smidt bliver sendt ind i db.. $robot_con = mysql_query("SELECT * FROM community_point WHERE afsender = '$_SESSION[Brugernavn]'"); // Henter id'et... $robot = mysql_fetch_array($robot_con); mysql_query("insert into tagwall set navn = '<b>Information</b> (Bot)', besked = '$_SESSION[Brugernavn] har smidt $point point, for at samle dem op, <a href=\"?smid=ja&id=$robot[id]\">klik her</a>', afsender = 'Information', modtager = '', rang = 'Robot', dato = '$dato'"); }} ?>
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.