hi,

Ik ben op dit moment bezig met een game-site aan het maken, maar het blijkt dat ik ergens ben vastgelopen. Zelf heb ik nog maar weinig ervaring, dus vroeg me af of iemand anders er even naar kon kijken.

De variabel "teller" krijg geen waarde door en daardoor wordt de database niet uitvoerbaar.
Hieronder heb ik een stukje gepaste waarin de fout moet zitten.

<?php

//--aantal rulerz bepalen
$query = "SELECT * FROM spel";
$result = mysql_query($query);
$totalrulerz = mysql_num_rows($result);

echo "$totalrulerz";

//--teller gelijk zetten aan aantal rulers
$totalrulerz = $teller;

//--rulerz bijwerken van laatste naar eerste zosnel die bij ruler 0 komt zal die dus stoppen
do {
//--gegevens van personen uit database halen
$sql = 'SELECT persoon, gangster, leisure, geld, dealers FROM `spel` WHERE `persoon` =$teller';
$res = mysql_query($sql);
$row = mysql_fetch_array($res);
$ruler = $row[persoon];
$gangsters = $row[gangster];
$leisure = $row[leisure];
$geld = $row[geld];
$dealers = $row[dealers];

//--geldopbrengst bepalen
$geldopbrengst = $dealers * 50;
//--gangster population bepalen in procenten
$groei = $leisure * 2 / 100 + 100;

$teller = $teller -1;
}
while ($teller > 0);

?>
zoiets, maar toch anders dan de rest... als je me helpt kan je ooit het resultaat zien ;) zonder hulp zit ik nog steeds vast
ik kan ondertussen wel $teller een waarde laten krijgen.... (zolang ik maar weinig aan script verander) anders doet hij het opeens niet... maar krijg de foutmelding

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /srv/darkie/www/www.desite.nl/database/turnupdate2.php on line 25

wat moet ik daarmee
het is nu:

<?php
include ("login.php");
if (!mysql_select_db($dbdb, mysql_connect($host, $user, $pass)))
{
echo "kan geen verbinding maken met de database.";
}
unset($user);
unset($pass);
unset($host);
unset($dbdb);
$query = "SELECT * FROM spel";
$result = mysql_query($query);
$totalrulerz = mysql_num_rows($result);
echo "Totaal: $totalrulerz";


//--teller gelijk zetten aan aantal rulers
$totalrulerz = $teller;

//--rulerz bijwerken van laatste naar eerste zosnel die bij ruler 0 komt zal die dus stoppen
do {
//--gegevens van personen uit database halen
$sql = 'SELECT persoon, gangster, leisure, geld, dealers FROM `spel` WHERE `persoon` =$teller';
mysql_query($sql) or die(mysql_error() . "<br>" . $sql);
$row = mysql_fetch_array($res);
$ruler = $row[persoon];
$gangsters = $row[gangster];
$leisure = $row[leisure];
$geld = $row[geld];
$dealers = $row[dealers];

//--geldopbrengst bepalen
$geldopbrengst = $dealers * 50;
//--gangster population bepalen in procenten
$groei = $leisure * 2 / 100 + 100;

$teller = $teller -1;
}
while ($teller > 0);


echo "de geldopbrengst is $geldopbrengst";
?>

en de error is nu het volgende geworden:

Unknown column '$teller' in 'where clause'
als dit heel je code is ligt het dan niet hier aan?
$teller = $teller -1;
moet dat niet
$teller = teller -1;
zijn?
nee maakt geen verschil in error in ieder geval
while ($teller > 0);

moet volgens mij dan:
while (teller > 0); zijn
mm volgens mij heeft het te maken met aanhalingstekens.... heb nu....

<?php
include ("login.php");
if (!mysql_select_db($dbdb, mysql_connect($host, $user, $pass)))
{
echo "kan geen verbinding maken met de database.";
}
unset($user);
unset($pass);
unset($host);
unset($dbdb);
$query = "SELECT * FROM spel";
$result = mysql_query($query);
$totalrulerz = mysql_num_rows($result);
echo "Totaal: $totalrulerz";


//--teller gelijk zetten aan aantal rulers
$totalrulerz = $teller;

//--rulerz bijwerken van laatste naar eerste zosnel die bij ruler 0 komt zal die dus stoppen
do {
$teller = 2;
//--gegevens van personen uit database halen
$sql = 'SELECT persoon, gangster, leisure, geld, dealers FROM `spel` WHERE `persoon` = "$teller"';
$res = mysql_query($sql);
$row = mysql_fetch_array($res);
$ruler = $row[persoon];
$gangsters = $row[gangster];
$leisure = $row[leisure];
$geld = $row[geld];
$dealers = $row[dealers];

//--geldopbrengst bepalen
$geldopbrengst = $dealers * 50;
//--gangster population bepalen in procenten
$groei = $leisure * 2 / 100 + 100;
$teller = $teller - 1;
}
while ($teller > 0);


echo "de geldopbrengst is $geldopbrengst";
?>

pagina laad alleen niet meer :) of blijft laden, bang dat er iets mis is met me loop
tuurlijk niet.. dat kan toch niet.. een woord kleiner dan 0 ? je moet een getal hebben om te vergelijken met een ander getal.. het is dus wel goed..

alleen als je ALTIJD doet van:

if ($teller > 0)

dan gaat hij oneindig door, en loopt dus vast, tenzij je op een gegeven moment zegt, unset($teller);

Reageren