Avatar billede odontomania Nybegynder
15. august 2003 - 21:24 Der er 5 kommentarer og
1 løsning

switch cmd virker ikke på xp/2k?

Jeg bliver...undskyld, er bleven sinddsyg! Både ved 2k og xp virker switch cmd ikke. Jeg kører med apache 1.3.27 til windows og php 4.3.2 og flg. kode giver altid "Number not between 1 and 10":

<form id="selection" name="numWord" method="post" action="112.php">
    <input type="text" size="5" name="numWord"><br>
    <input type="submit" value="Display Word" name="convert">
</form>

<?php
    switch ($numWord)
    {
    case 1:
        print "One <br>";
        break;
    case 2:
        print "Two <br>";
        break;
    case 3:
        print "Three <br>";
        break;
    case 4:
        print "Four <br>";
        break;
    case 5:
        print "Five <br>";
        break;
    case 6:
        print "Six <br>";
        break;
    case 7:
        print "Seven <br>";
        break;
    case 8:
        print "Eight <br>";
        break;
    case 9:
        print "Nine <br>";
        break;
    case 10:
        print "Ten <br>";
        break;
    default:
        print "Number not between 1 and 10 <br>";
    }
?>


Der er intet galt med koden :-) Jeg kunne simpelthen ikke forstå at det ikke virkede, indtil jeg uploadede den til mit webhotel der kører med linux, apache 1.3.27 og php 4.2.2. Der opdagede jeg så at det rent faktisk virkede. Dvs...der må være noget helt fucked galt med en indstilling i php. Men hvad er det jeg mangler at tilføje / fjerne fra httpd.conf? (Fejlen er også ved apache2 og xitami!)
På forhånd tak
Avatar billede schaefner Juniormester
15. august 2003 - 21:27 #1
Prøv:
switch ($_POST['numWord'])
Avatar billede jakoba Nybegynder
15. august 2003 - 21:29 #2
Det kan meget vel være at din php version hjemmer er nyere, så du skal hente feltværdien fra $_POST['numWord'] og ikke får den automatisk leveret i sin egen variabel.

prøv:
    switch ($_POST['numWord'])

mvh JakobA
Avatar billede jakoba Nybegynder
15. august 2003 - 21:29 #3
Oh well, som han siger :-)
Avatar billede odontomania Nybegynder
15. august 2003 - 21:32 #4
Det virkede...det var sq da fantastisk. Sidste gang jeg læser en tutorial til php uden at finde versionsnummeret først :-) Thnx alot
Avatar billede schaefner Juniormester
15. august 2003 - 21:38 #5
så kommer der her et svar springende.
Avatar billede odontomania Nybegynder
15. august 2003 - 22:41 #6
Php and mysql for dummies er en glimrende introduktion for nubis, og hvis jeg så også gad kigge på forfatterens hjemmeside:


Add a line at the top of the file that moves the values from the built-in array to a simple variable. For instance, for a form field named first_name, add the following line:
  $first_name = $_POST['first_name'];
to the program before the variable is used. Or write a loop that creates a simple variable for each field in the form, such as:
  foreach( $_POST as $key => $value )
  {
    $$key = $value;
  }
Note: This foreach loop is almost equivalent to the procedure performed when register_globals is turned on. It has basically the same security issues. If you are going to use this loop, you might as well turn register_globals on, if you can.
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