Avatar billede doomstone-dk- Nybegynder
08. april 2003 - 15:20 Der er 10 kommentarer og
1 løsning

Mindste verdi dog ikke "0"

Jeg har 10 variable!
dette script skal tage det laveste og putte det ind i $ql!
den skal dog ikke tage det hvad det er 0!

her er mit script! det virker bare ikke :(

$ql = $me;
if($ql <= $ee && $ee >= 1) $ql=$ee;
if($ql <= $qf && $qf >= 1) $ql=$qf;
if($ql <= $ws && $ws >= 1) $ql=$ws;
if($ql <= $pt && $pt >= 1) $ql=$pt;
if($ql <= $np && $np >= 1) $ql=$np;
if($ql <= $cl && $cl >= 1) $ql=$cl;
if($ql <= $ps && $ps >= 1) $ql=$ps;
if($ql <= $ch && $ch >= 1) $ql=$ch;
if($ql <= $tu && $tu >= 1) $ql=$tu;
echo "QL: ".$ql;
Avatar billede sone Nybegynder
08. april 2003 - 15:37 #1
Skal det ikke være: ($ql>$ee && $ee>0)
Avatar billede repox Seniormester
08. april 2003 - 15:42 #2
smid alle variablerne ind i et array..

$array(3, 87, 987,.. og så videre til du har ti tal);
(går ud fra du sagtens kan smide dine variabler ind i et array)

og når du så skal finde den mindste

if(!min($array) == 0) {
echo min($array);
}else{
echo 'Mindsteværdien er nul';
}
Avatar billede doomstone-dk- Nybegynder
08. april 2003 - 15:44 #3
hmm Shady! den skal vise den mindste verdi som IKKE er 0
hmm skla på work nu er tilbage om 2½ time!
Avatar billede repox Seniormester
08. april 2003 - 15:46 #4
if(!min($array) == 0) {
echo min($array);


så...
Avatar billede repox Seniormester
08. april 2003 - 15:46 #5
if(!min($array) == 0) {
echo min($array);
};

lige en lille ; fejl...
Avatar billede repox Seniormester
08. april 2003 - 15:57 #6
Ihvertfald, så virker det her som du efterlyser det..

$array = array(321, 878, 687, 313, 877, 5547, 931, 7897, 6878, 68);

if(!min($array) == 0) {
echo "QL:".min($array); //med ovenstående array udvælges 68
};

men hvis du nu skal bruge det fra en form på din hjemmeside, så kan du gøre således:

<form method=post action=phpinfo.php>
<input type="hidden" name="action" value="send">
<input type="text" name="array[0]"><br>
<input type="text" name="array[1]"><br>
<input type="text" name="array[2]"><br>
<input type="text" name="array[3]"><br>
<input type="text" name="array[4]"><br>
<input type="text" name="array[5]"><br>
<input type="text" name="array[6]"><br>
<input type="text" name="array[7]"><br>
<input type="text" name="array[8]"><br>
<input type="text" name="array[9]"><br>
<input type="submit">
</form>

<?php


if ($action == "send") {
if(!min($array) == 0) {
echo "QL:".min($array);

};

};
?>
Avatar billede doomstone-dk- Nybegynder
08. april 2003 - 18:44 #7
Det virker ikke :(
dette er mit array!
Array
(
    [0] => 0
    [1] => 0
    [2] => 0
    [3] => 0
    [4] => 0
    [5] => 0
    [6] => 149
    [7] => 0
    [8] => 73
    [9] => 0
)

i kan selv se det!
http://www.zapsite.dk/skillz/skillz.php?mode=how
infoen er skrevet ind så i skal bare trykke "Calculate"
Avatar billede doomstone-dk- Nybegynder
08. april 2003 - 19:47 #8
hmm den skriver ikke engang 0! hvad er det jeg gør forkert?
Avatar billede doomstone-dk- Nybegynder
09. april 2003 - 08:45 #9
det vil altser sige at i dette arrayskal den give mig [8]
Avatar billede repox Seniormester
09. april 2003 - 15:08 #10
skulle den ikke kun gøre noget hvis der ikke var en nul-værdi ?
Avatar billede repox Seniormester
09. april 2003 - 15:43 #11
Nå, hvis vi så siger at den skal tage den mindste værdi og ignorere nullerne, så brug foreach()
Først finder vi ud af hvad størsteværdien er, derefter tæller den ned fra maksværdien...


foreach($array as $value) {
if ($value > $temp) {
$temp = $value; }
}
foreach($array as $value) {
if ($value < $temp && $value != 0) {
$temp = $value; }
}
echo "QL:".$temp."<br>";

Så tager den den mindste værdi, og viser den og ignorer nul-værdien...

Det her burde virke efter hensigten....
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