22. november 2005 - 15:06Der er
29 kommentarer og 1 løsning
Indsæt og opdater tal i tabel
Ja, hvordan kan jeg automatisk indsætte/opdatere et 5 tal hver gang der er nogle der skriver et indlæg i mit forum, altså hvis jeg nu skriver et indlæg, logget ind som jens. Så skal der fremkomme et 5 tal i tabellen `brugere` i jens's profil under rækken `point`. Og næste gang han skriver opdatere den tallet til 10. Næste gang igen bliver det til 15. osv. Hvordan kan jeg gøre det ?
det som fastslår dine brugeres nav, id og lign ... men for det meste skriv du bare WHERE id=id .. eller WHERE id=('$id') ... Hvis du har en SELECT som henter Data fra DB ....
$s_medlemmer = mysql_query("SELECT id,brugernavn FROM brugere"); WHILE($medlemmer = mysql_fetch_array($s_medlemmer)) { mysql_query("UPDATE brugere SET point = point + 5 WHERE id = x") or die(mysql_error()); }
$s_medlemmer = mysql_query("SELECT id,brugernavn FROM brugere"); WHILE($medlemmer = mysql_fetch_array($s_medlemmer)) { mysql_query("UPDATE brugere SET point = point + 5 WHERE id=('$id')") or die(mysql_error()); }
altså , Så hver gang at en trykker Submit eller Send , så er det bare at have en Submit ... if $action=[$send] { UPDATE tabel SET point = point+5 WHERE id=('$username');
Den virker desværre ikke, ingen fejl, den indsætter bare ikke de 5 point når man skriver en besked. Mit dokument ser således ud:
<?php session_start();
include "mysql.php"; if(isset($_POST['submit'])) {
if(empty($_SESSION['brugernavn'])) { echo "Du er ikke logget ind, og kan derfor ikke kommentere indlæg. Gå til login side <a href=\"login.php\">her.</a>"; exit; } if($_POST['besked'] == "") { } $besked = nl2br(htmlentities(addslashes($_POST['besked']))); $parent = $_POST['id']; $forfatter = $_SESSION['brugernavn']; $dato = date('d/m/Y H:i:s');
mysql_query("INSERT INTO kommentar (besked, parent, dato, forfatter) VALUES ('$besked', '$parent', '$dato', '$forfatter')"); // mysql_query("INSERT INTO kommentar VALUES (''$besked','$parent', '$dato', '$forfatter'')") or die(mysql_error());
mysql_query("UPDATE brugere SET point = point + 5 WHERE id = $id") or die(mysql_error());
Jamen, nu er det jo bare et forkert navn vi har indsat, der står jo at rækken Arne ikke findes, det er jo heller ikke den det skal indsættes i, det er rækken point den skal indsætte det i ! :)
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.