Avatar billede dizzim Nybegynder
29. juni 2004 - 22:33 Der er 7 kommentarer og
1 løsning

Hvorfor virker større end eller mindre end ikk?

Jeg har skrevet følgende men af en eller anden grund viser den ikke side 2 (med part 2 af koden på). ?
Der kommer bare en blank side (også uden al html'en?
Dog står den rigtige sti i address-baren.?
Jeg har skrevet følgende:


Part 1:

<form action="part_02.php" method="post">
<select name="number">
<option value="40"> ----
<option value="20000"> ----
<option value="30000"> -----
<option value="40000"> ------
<option value="64500000"> ------
</select>
<br>
<input type="text" name="money">
<br>
<input type="submit" value="Submit now!">
</form>


part 2:

<?php

$number = $_REQUEST["number"];
$money = $_REQUEST["money"];

if ($number =< $money) {
$result = "Enough";
} else {
$result = "Insufficent";
}

echo "<h1> $result </h1>";
?>


Nogen der kan se fejlen?
Avatar billede dizzim Nybegynder
29. juni 2004 - 22:36 #1
<option value="40"> ----
<option value="20000"> ----

Der er selvf. tekst istedet for ----
Avatar billede dadane Novice
29. juni 2004 - 22:36 #2
Det hedder ikke =< men <=
Og i øvrigt også >=
Avatar billede dizzim Nybegynder
29. juni 2004 - 22:38 #3
Det gør det ik ifølge http://www.webcafe.dk/artikler/php/forgreninger/
Men jeg prøver lige at lave det om alligevel...
Avatar billede dizzim Nybegynder
29. juni 2004 - 22:40 #4
De må ha' skrevet forkert så...
Tak, bare lig et svar så er pointene dine...
Avatar billede dadane Novice
29. juni 2004 - 22:42 #5
Takker (og husk at send en e-mail til webcafe :p)
Avatar billede jakoba Nybegynder
30. juni 2004 - 20:46 #6
>> dizzim
    Det virker fint. men du skal holde øje med HVAD der er du sammenligner

if ( 2000 > 40 ) {
    echo "tallet 2000 er større end tallet 40.<br>";
} else {
    echo "tallet 2000 er <= tallet 40.<br>";
}

if ( "2000" > "40" ) {
    echo "strengen '2000' er større end strengen '40'.<br>";
} else {
    echo "strengen '2000' er <= strengen '40'.<br>";
}

et tal skrives som en række cifre skrevet efter hinanden *uden* citationstegn omkring. værdien af tallet er den du kender fra skolen (fx  tallet 21 har værdien 2*10 +1 )

end streng er et antal bogstaver eller cifre omkranset af citationstegn. værdien af tallet bestemmes af tegnkoderne for de bogstaver/cifre der står i strengen. de sammenlignes efter alfabetisk orden og ikke efter numerisk orden.
så "2000" er MINDRE end "40" fordi talkoden for ciffer 2 er mindre end talkoden for ciffer fire. (i en ordbog skal alle ord der starter med 'a' stå foran de ord der starter med 'b')

mvh JakobA
Avatar billede jakoba Nybegynder
30. juni 2004 - 21:05 #7
og det du får fra  $_REQUEST  arrayet er altid strenge. hvis du ved de værdier der kommer kan bruges som tal og du ønsker at bruge dem sådan må du lave dem om til tal:
  $number = $_REQUEST["number"];  // $number er nu en streng
  settype( $number, "integer" );  // lave $number om til et tal
  $money = $_REQUEST["money"];    // $money er nu en streng
  settype( $money, "integer" );    // lave $money om til et tal

og nu vil din if-sætning virke.
Avatar billede dizzim Nybegynder
30. juni 2004 - 21:09 #8
@JakobA
tak for info'en.
(cool du gidder selvom du jeg ikk kan gi' dig nogen point for det, thumbs up!)
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