Avatar billede allanhansendk Nybegynder
20. august 2008 - 14:55 Der er 4 kommentarer og
1 løsning

MAX() returnerer fejl

Følgende er et kode eksempel:

$max = "0"

$read = $mysqli->query("SELECT nummer FROM table");
while($label = mysqli_fetch_array($read)){
  $maxVal .= ",".$label['nummer'];
}   
       
echo max($maxVal);

Men koden giver følgende fejl:
Warning: Wrong parameter count for max() in C:\WWW\kvalitet\inc\xml\hoHistory.php on line 56

Linie 56 indeholder linien echo max($maxVal);

Alle i $label['nummer'] er hele tal, og ved en echo på $maxVal får jeg en liste der ligner dette:
2,5,6,9,2,1,5,8,73,8

Er der nogen der kan hjælpe mig?
Avatar billede w13 Novice
20. august 2008 - 14:58 #1
Du kan nok ikke bruge en tekststreng, hvori tallene er adskilt af komma. Brug et rigtigt array:

$max = array();

$read = $mysqli->query("SELECT nummer FROM table");
while($label = mysqli_fetch_array($read)){
  array_push($maxVal,$label['nummer']);
}

echo max($maxVal);
Avatar billede w13 Novice
20. august 2008 - 14:59 #2
Hov, først kalder du jo også variablen for $max, men senere kalder du den $maxVal.

$maxVal = array();

$read = $mysqli->query("SELECT nummer FROM table");
while($label = mysqli_fetch_array($read)){
  array_push($maxVal,$label['nummer']);
}

echo max($maxVal);
Avatar billede allanhansendk Nybegynder
20. august 2008 - 15:05 #3
Tak for hjælpen. Det er sjovt det altid er dig der skal komme mig til undsætning.
Avatar billede w13 Novice
20. august 2008 - 15:07 #4
:P Og tak for point!
Avatar billede hmortensen Nybegynder
20. august 2008 - 16:44 #5
Du kan også lave operationen direkte på databasen, og kun hente det endelige resultat, i stedet for at hente det hele.

SELECT MAX(nummer) FROM table
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