Avatar billede dark-devil Nybegynder
29. august 2004 - 12:27 Der er 20 kommentarer og
1 løsning

Minus i php og trække fra.

Hey, jeg er ved at lave en forum, som ligner noget hen efter EXP.dk, og S2A.dk
Men nu er jeg kommet til det svære.

Når man opretter en spg, så skal man vælge hvor mange point man vil give. Så har jeg lave dem her:

Nemt: <input type="radio" name="point" value="points_15"><br>
Mellem: <input type="radio" name="point" value="points_30"><br>
Svært: <input type="radio" name="point" value="points_50"><br>


Og i den hvor man opretter spg, ser koden sådan her ud:

$point = $_REQUEST['point'];

mysql_query("INSERT INTO spg (overskrift, navn, kategori, tekst, ip, point) VALUES ('$overskrift','$navn','$kategori','$tekst','$ip','$point')");

Her kommer mine 2 spøgsmål så:

+ Hvordan kan den vide at $spg er 15, 30 eller 50?
+ Hvordan gør jeg sådan når man opretter, så trækker den $point fra hans kolonne i "tester" databasen?
Avatar billede dark-devil Nybegynder
29. august 2004 - 12:30 #1
Det med $spg er fikset, mangler det andet svar.
Avatar billede dark-devil Nybegynder
29. august 2004 - 12:30 #2
Skulle bare sætte:

Nemt: <input type="radio" name="point" value="points_15"><br>
Mellem: <input type="radio" name="point" value="points_30"><br>
Svært: <input type="radio" name="point" value="points_50"><br>

Til:

Nemt: <input type="radio" name="point" value="15"><br>
Mellem: <input type="radio" name="point" value="30"><br>
Svært: <input type="radio" name="point" value="50"><br>
Avatar billede x4all_dk Nybegynder
29. august 2004 - 12:31 #3
Du kan aflæse "point" sådan her:

[test.php]
<?
$point_form = $_REQUEST['point_form'];
echo $point;
?>
<form method="POST" ACTION="test.php">
<input type="radio" name="point_form" value="15">
<input type="radio" name="point_form" value="30">
<input type="radio" name="point_form" value="50">
<input type="submit">
</form>

Ret Value til rigtige tal, så kan du lettere trække dem fra et andet tal.
dvs. du henter "$point" ud fra DB og så kan du jo trække fra
$point = $point - $point_form;
Avatar billede dark-devil Nybegynder
29. august 2004 - 12:33 #4
Havde fikset det første.. Men jeg forstår ikke det sidste, det du skriver..
Avatar billede dark-devil Nybegynder
29. august 2004 - 12:35 #5
Kan det virke hvis man skriver:

mysql_query("UPDATE tester set penge = '$point-$point'")
Avatar billede x4all_dk Nybegynder
29. august 2004 - 12:36 #6
Du skal hente brugerens point fra databasen:
$point_database = mysql_query(hent brugeres point fra databasen);

$point_rettet = $point_database - $point_form;

mysql_query("INSERT INTO spg (overskrift, navn, kategori, tekst, ip, point) VALUES ('$overskrift','$navn','$kategori','$tekst','$ip','$point_rettet')");
Avatar billede x4all_dk Nybegynder
29. august 2004 - 12:37 #7
PAS PÅ!
Brug ikke samme navngivning til forskellige variable, det ender galt!
Avatar billede dark-devil Nybegynder
29. august 2004 - 12:38 #8
Dømmer fejl :-s
Parse error: parse error in /usr/home/whitehat_dk/users/wgforum/index.php on line 135
Avatar billede dark-devil Nybegynder
29. august 2004 - 12:39 #9
Hele min kode:

<?php
if ($spg == "checkspg"){
?><?php
$overskrift = $_REQUEST['overskrift'];
$navn = $_REQUEST['navn'];
$kategori = $_REQUEST['kategori'];
$tekst = $_REQUEST['tekst'];
$point = $_REQUEST['point'];
$ip = $_SERVER['REMOTE_ADDR'];

$connect = mysql_connect("localhost","wgforum","koden.");
mysql_select_db("wgforum");
$point_database = mysql_query(SELECT * FROM tester WHERE brugernavn = '$_GET[navn]');
$point_rettet = $point_database - $point;
mysql_query("INSERT INTO spg (overskrift, navn, kategori, tekst, ip, point) VALUES ('$overskrift','$navn','$kategori','$tekst','$ip','$point_rettet')");

echo "<font face=$font color=$color size=$size>Dit spg, er nu sat ind"; }
?>
Avatar billede dark-devil Nybegynder
29. august 2004 - 12:40 #10
Manglede (" ") mellem mysql_query! :)
Avatar billede dark-devil Nybegynder
29. august 2004 - 12:42 #11
Virker ikke..
den minusser ikke fra databsen.
Avatar billede x4all_dk Nybegynder
29. august 2004 - 12:45 #12
Du skal hente point ud. F.eks. på denne måde:
$result_point = mysql_query(SELECT * FROM tester WHERE brugernavn = '$_GET[navn]');
$row = mysql_fetch_row($result);
$point_database = row['point'];
Avatar billede x4all_dk Nybegynder
29. august 2004 - 12:45 #13
ups teste fejl skal lige rettes:
$result = mysql_query(SELECT * FROM tester WHERE brugernavn = '$_GET[navn]');
$row = mysql_fetch_row($result);
$point_database = row['point'];
Avatar billede x4all_dk Nybegynder
29. august 2004 - 12:46 #14
og lige en tastefejl mere...
$result_point = mysql_query(SELECT * FROM tester WHERE brugernavn = '$_GET[navn]');
$row = mysql_fetch_row($result);
$point_database = $row['point'];
Avatar billede dark-devil Nybegynder
29. august 2004 - 12:55 #15
Ligenu ser min kode sådan her ud:

<?php
if ($spg == "checkspg"){
?>
<?php
include("tjek_logind.php");
$overskrift = $_REQUEST['overskrift'];
$navn = $_REQUEST['navn'];
$kategori = $_REQUEST['kategori'];
$tekst = $_REQUEST['tekst'];
$point = $_REQUEST['point'];
$ip = $_SERVER['REMOTE_ADDR'];

$connect = mysql_connect("localhost","wgforum","koden.");
mysql_select_db("wgforum");
$point_database = mysql_query("SELECT penge FROM tester WHERE brugernavn = '$_SESSION[brugernavn];'");
$row = mysql_fetch_array($point_database);
$point_test = $row['penge'];
$point_rettet = $point_test-$point;

mysql_query("INSERT INTO spg (overskrift, navn, kategori, tekst, ip, point) VALUES

('$overskrift','$navn','$kategori','$tekst','$ip','$point_rettet')");

echo "<font face=$font color=$color size=$size>Dit spg, er nu sat ind"; ?>
<?php
}
?>


Men den minusser ikke en skid.
Avatar billede dark-devil Nybegynder
29. august 2004 - 12:57 #16
Det jo mere sådan her:

$point_test = $row['penge'];
$point_rettet = $point - $point_test;
Avatar billede dark-devil Nybegynder
29. august 2004 - 12:57 #17
Men den minusser ikke mine penge.
Avatar billede dark-devil Nybegynder
29. august 2004 - 13:02 #18
Det da klart når den ikke updater i "tester" *DOOH*
Avatar billede dark-devil Nybegynder
29. august 2004 - 13:05 #19
Fik det til og du, læg svar X4ll_dk!
Avatar billede dark-devil Nybegynder
29. august 2004 - 13:08 #20
Ikke helt, i databasen hvis jeg sætter et hak i "mellem" så siger den -970, der skal jo ikke være "-" foran? :(
Avatar billede dark-devil Nybegynder
29. august 2004 - 13:15 #21
jaaa, fik det til og virke! !!: DDDD
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