/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Kode
Fra : Nikolaj Svendsen


Dato : 17-03-07 08:09

Nu har jeg rodet med dette stykke kode i noget tid og kan ikke finde fejlen
det går galt når den skal update så vidt jeg kan se nogen der kan se en fejl

<?
require_once "maincore.php";


$user_name = $_GET["besked"];



$username="nikolajs12";

$password="hort12";

mysql_connect(localhost,$username,$password);

mysql_select_db('altsjov2s');

$cash = dbarray(dbquery("SELECT * FROM sim_users_points WHERE
owner_name='$user_name'"));

$nuværendepoint = $cash['points_total'];

$pointstotal = $nuværendepoint + "1000";



$dbquery = "UPDATE sim_users_points SET points_total = '$pointstotal' WHERE
owner_name='$user_name'";



mysql_query($dbquery);



?>



 
 
Johan Holst Nielsen (17-03-2007)
Kommentar
Fra : Johan Holst Nielsen


Dato : 17-03-07 12:30

Nikolaj Svendsen wrote:
> Nu har jeg rodet med dette stykke kode i noget tid og kan ikke finde fejlen
> det går galt når den skal update så vidt jeg kan se nogen der kan se en fejl

Hmmm... der er flere ting som KAN skabe fejlen... men hvad sker der når
scriptet kører? Intet eller fejl eller?!?

>
> mysql_connect(localhost,$username,$password);

localhost er en string - så linjen skal se således ud:
mysql_connect('localhost',$username,$password);


> $nuværendepoint = $cash['points_total'];

Hvilken datatype er points_total? Æ kan ikke bruges i variabelnavne...
brug ae

> $pointstotal = $nuværendepoint + "1000";

Du ligger en streng til noget jeg TROR er en integer?
Hvis points_total er en VARCHAR eller lign - bør du nok omskrive linjen
til noget ala:

$pointstotal = intval($nuvaerendepoint)+1000;


> $dbquery = "UPDATE sim_users_points SET points_total = '$pointstotal' WHERE
> owner_name='$user_name'";

Ser umiddeltbart fint ud...

En anden ting - har du tjekket at at $nuvaerendepoint ikke er tom? Og
den første forespørgsel overhovedet returnerer et array? Måske er det
$_GET['besked'] den er gal med?

Mvh
Johan

Michael Zedeler (17-03-2007)
Kommentar
Fra : Michael Zedeler


Dato : 17-03-07 15:07

Nikolaj Svendsen skrev:
> Nu har jeg rodet med dette stykke kode i noget tid og kan ikke finde fejlen
> det går galt når den skal update så vidt jeg kan se nogen der kan se en fejl
>
> <?
> require_once "maincore.php";
>
>
> $user_name = $_GET["besked"];
>
>
>
> $username="nikolajs12";
>
> $password="hort12";
>
> mysql_connect(localhost,$username,$password);
>
> mysql_select_db('altsjov2s');
>
> $cash = dbarray(dbquery("SELECT * FROM sim_users_points WHERE
> owner_name='$user_name'"));
>
> $nuværendepoint = $cash['points_total'];
>
> $pointstotal = $nuværendepoint + "1000";
>
>
>
> $dbquery = "UPDATE sim_users_points SET points_total = '$pointstotal' WHERE
> owner_name='$user_name'";

Ud over Johans kommentarer er der også lige det at dit regnestykke er
overflødigt. Det kan du bare lave i SQL:

$dbquery = "UPDATE sim_users_points
SET points_total = points_total + 1000
WHERE owner_name='$user_name'";

Linieskift indsat for at øge læsbarheden.

Mvh. Michael.

--
Which is more dangerous? TV guided missiles or TV guided families?
I am less likely to answer usenet postings by anonymous authors.
Visit my home page at http://michael.zedeler.dk/

Søg
Reklame
Statistik
Spørgsmål : 177500
Tips : 31968
Nyheder : 719565
Indlæg : 6408514
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste