Ich steh auf dem Schlauch

Revolutionary Act
Hi,

Ich bin gerade dabei eine Kleine Liste zu schreiben, die mir alle User ausgeben soll die im Feld "cash" der users Tabelle was anderes als 0 stehen haben.

Mein Script sieht so aus, und funktioniert AN SICH:
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
<?php
require("./global.php");
isAdmin();
$mode = $_REQUEST['mode'];

if ($mode = "1")
{
$ask_cash = $db->query_first("SELECT cash, username FROM bb".$n."_users WHERE cash != '0'");
$cash_username = $ask_cash[username]; 
$cash_amount = $ask_cash[cash];
$cash_bit = "<tr class=firstrow><td><b>$cash_username</b></td><td>$cash_amount Euro</td></tr>";      

eval("print(\"".gettemplate("users_with_cash")."\");");
}
?>


Das Problem ist, das es mir nur EINEN User ausgibt ich aber im Testforum 2 habe die was anderes als 0 in dem besagten Feld stehen haben.

Ich hab nun schon sehr viel rumprobiert aber irgendwie stehe ich gerade total
auf dem Schlauch und hab keine Plan was ich falsch mache, bzw. ändern muss.

Hoffentlich kann mir jemand den Code da oben anpassen und kurz erklären (falls ich nicht selbst sofort nen Aha Effekt bekomme xD) warum das so nicht funktioniert hat und halt dann so schon. großes Grinsen

vielen Dank schonmal smile
Helmchen
Wie wäre es mit einer kleinen Schleife ?

code:
1:
if ()  {....}


Erfüllt ja nur einmal die Bedingung.........

code:
1:
while ()   {....}


Sollte da eher mehr Ergebnisse bringen Augen rollen
Revolutionary Act
Danke Helmchen, ich habs mittlererweile so gelöst:
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
<?php
require("./global.php");
isAdmin();
$mode = $_REQUEST['mode'];

if ($mode == "1")
{
$ask_cash = mysql_query("SELECT cash, username FROM bb".$n."_users WHERE cash != '0'");
while($row = mysql_fetch_object($ask_cash))
   {
$cash_username = "$row->username";
$cash_amount = "$row->cash";
eval ("\$cash_bit .= \"".gettemplate("cash_bit")."\";");
   }      

eval("print(\"".gettemplate("users_with_cash")."\");");
}
?>


Ich hasse das immer wenn man sucht und sucht und es eigentlich relativ offensichtlich ist
aber man es ewig nicht findet...

smile
derkleene
Zitat:
Original von Revolutionary Act
Danke Helmchen, ich habs mittlererweile so gelöst:
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
<?php
require("./global.php");
isAdmin();
$mode = $_REQUEST['mode'];

if ($mode == "1")
{
$ask_cash = mysql_query("SELECT cash, username FROM bb".$n."_users WHERE cash != '0'");
while($row = mysql_fetch_object($ask_cash))
   {
$cash_username = "$row->username";
$cash_amount = "$row->cash";
eval ("\$cash_bit .= \"".gettemplate("cash_bit")."\";");
   }      

eval("print(\"".gettemplate("users_with_cash")."\");");
}
?>


Ich hasse das immer wenn man sucht und sucht und es eigentlich relativ offensichtlich ist
aber man es ewig nicht findet...

smile


Weiß nicht soll ich nun weinen oder lachen?
Setzt Dich bitte mit der Class db auseinander und lerne deren Funktionen.
Denn dies ist absolut nicht WBB Standard. Bevor Du sowas raushaust, lerne es erst bitte.
Und Nein, ich schreibe nun nicht wie es richtig nach wbb Standard ist.
nur als Tipp:

es gibt:
$ask_cash = $db->query_first("SELECT cash, username FROM bb".$n."_users WHERE cash != '0'");

und:
$ask_cash = $db->query("SELECT cash, username FROM bb".$n."_users WHERE cash != '0'");

und dann klappt dies auch wunderbar mit:
while($row=$db->fetch_array($result)) {

und:
$cash_username = $ask_cash[username];
Revolutionary Act
Das ist für ne Funktion die ich nicht für die Öffentlichkeit geschrieben habe, aber wenns
dich glücklich macht, hier die WBB-Syntax konforme Lösung/Code:

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
<?php
require("./global.php");
isAdmin();
$mode = $_REQUEST['mode'];

//Welche User haben Geld?
if ($mode == "1")
{
$ask_cash = $db->query("SELECT cash, username FROM bb".$n."_users WHERE cash != '0'");
while($row=$db->fetch_array($ask_cash)) {
$cash_username = $row[username]; 
$cash_amount = $row[cash];
eval ("\$cash_bit .= \"".gettemplate("cash_bit")."\";");
}     

eval("print(\"".gettemplate("users_with_cash")."\");");
}
?>


lg
Revolutionary Act