Avatar billede danic Nybegynder
13. februar 2002 - 08:21 Der er 27 kommentarer og
1 løsning

Check til dropdown boks

Jeg har her en dropdown boks, men hvordan laver jeg et check med PHP, så hvis man trykker submit til "Vælg en farvekode" så kommer den med en fejl => (du skal vælge en farve).

<FORM method="post" action="farvekode.php">
<SELECT NAME="farvekoder" SIZE="1">
<OPTION value="Vælg en farvekode">Vælg en farvekode</OPTION>
<OPTION VALUE="blå"> Blå
<OPTION VALUE="grøn"> Grøn
<OPTION VALUE="Rød"> Rød
<INPUT type="submit" value="submit">
</SELECT>
Avatar billede the_matrix1 Nybegynder
13. februar 2002 - 08:24 #1
for mig ser den rigtig nok ud! så forstår ikke helt hvad der er galt!
Avatar billede danic Nybegynder
13. februar 2002 - 08:33 #2
check boksen fejler intet men jeg mangler et check a'la

if
Vælg en farvekode=Vælg en farvekode;
then
print"du skal vælge en farve";
else
...
Avatar billede ulrich Novice
13. februar 2002 - 08:52 #3
if $farvekoder = "Vælg en farvekode" then
..
..
.
Avatar billede the_matrix1 Nybegynder
13. februar 2002 - 09:01 #4
når! ok sorry!
Avatar billede puddelundercover Nybegynder
13. februar 2002 - 13:02 #5
if($farvekoder=="Vælg en favekode"){
echo("Du skal vælge en farve");
}
Avatar billede puddelundercover Nybegynder
13. februar 2002 - 13:02 #6
else{
blah blah blah
}
Avatar billede danic Nybegynder
13. februar 2002 - 13:09 #7
Skal jeg ikke sætte variablen $farvekoder="Vælg en farvekode" først?
Avatar billede danic Nybegynder
13. februar 2002 - 13:10 #8
doh! den henter den fra <SELECT NAME="farvekoder"
Avatar billede danic Nybegynder
13. februar 2002 - 13:11 #9
Jeg har først mulighed for at checke det i aften, så der bliver først delt ud når jeg har aftestet.
Avatar billede danic Nybegynder
13. februar 2002 - 18:01 #10
Jeg kan ikke få det til at virke, hvordan skal PHP koden smeltes sammen med HTML form'en?
Avatar billede puddelundercover Nybegynder
13. februar 2002 - 19:46 #11
----- form.html ---------------------------
<FORM method="post" action="farvekode.php">
<SELECT NAME="farvekoder" SIZE="1">
<OPTION value="Vælg en farvekode">Vælg en farvekode</OPTION>
<OPTION VALUE="blå"> Blå
<OPTION VALUE="grøn"> Grøn
<OPTION VALUE="Rød"> Rød
<INPUT type="submit" value="submit">
</SELECT>
--------------------------------------


---- farvekoder.php ------------------
<?
if($farvekoder=="Vælg en favekode"){
echo("Du skal vælge en farve");
}else{
echo($farvekoder);
}
?>
--------------------------------------
Avatar billede puddelundercover Nybegynder
13. februar 2002 - 19:48 #12
hov.. der skal selvfølgelig være en </form> nederst i form.html
Avatar billede puddelundercover Nybegynder
13. februar 2002 - 19:52 #13
... eller hvis du vil have det i samme fil:

<FORM method="post" action="">
<SELECT NAME="farvekoder" SIZE="1">
<OPTION value="Vælg en farvekode">Vælg en farvekode</OPTION>
<OPTION VALUE="blå"> Blå
<OPTION VALUE="grøn"> Grøn
<OPTION VALUE="Rød"> Rød
</SELECT>
<INPUT type"hidden" name="proceed" value="true">
<INPUT type="submit" value="submit">
</FORM>

<?
if($proceed=="true"){
  if($farvekoder=="Vælg en favekode"){
  echo("Du skal vælge en farve");
  }else{
  echo($farvekoder);
  }
}
?>
Avatar billede danic Nybegynder
13. februar 2002 - 20:14 #14
hvordan undgår man feltet efter dropdown-boksen med true

"<INPUT type"hidden" name="proceed" value="true">"
Avatar billede puddelundercover Nybegynder
13. februar 2002 - 20:23 #15
... ved at fjerne det? det er såmen bare for at fortælle dit php-script at du altså har trykket på knappen... du kan istedet skrive:

<?
  if($farvekoder=="Vælg en favekode"){
  echo("Du skal vælge en farve");
  }else if($farvekoder==""){
  }else{
  echo($farvekoder);
  }
?>
Avatar billede danic Nybegynder
13. februar 2002 - 21:16 #16
ah!!!

  }else{
  echo($farvekoder);
  }

Istedet for at udskrive $farvekoder, kan man så få den til at reloade siden?
Avatar billede puddelundercover Nybegynder
13. februar 2002 - 21:22 #17
ja, hvis du placerer scriptet heeelt oppe i toppen, så kan du istedet for echo($farvekoder); bruge Header(Location: farvekoder.php");

men det kræver at scriptet er placeret helt oppe i toppen, der må slet ikke være noget før - ikke engang et lille bitte mellemrum!
Avatar billede danic Nybegynder
13. februar 2002 - 21:39 #18
Hvis jeg gør sådan her kommer den med en:
Parse error: parse error in test.php on line 6

<?
if($farvekoder=="Vælg en favekode"){
echo("Du skal vælge en farve");
}else if($farvekoder==""){
}else{
Header(Location: farvekoder.php");
}
?>

<FORM method="post" action="">
<SELECT NAME="farvekoder" SIZE="1">
<OPTION value="Vælg en farvekode">Vælg en farvekode</OPTION>
<OPTION VALUE="blå"> Blå
<OPTION VALUE="grøn"> Grøn
<OPTION VALUE="Rød"> Rød
</SELECT>
<INPUT type="submit" value="submit">
</FORM>
Avatar billede puddelundercover Nybegynder
13. februar 2002 - 21:43 #19
Hov ja, du skal lige ha' et " ind foran Location.. sorry
Avatar billede danic Nybegynder
13. februar 2002 - 21:54 #20
hmm... hvis jeg vælger submit til "Vælg en farvekode" køre den bla.php filen og ikke test.php som den skal?
<?
if($farvekoder=="Vælg en favekode"){
echo("Du skal vælge en farve");
}else if($farvekoder==""){
}else{
Header("Location: test.php");
}
?>

<FORM method="post" action="bla.php">
<SELECT NAME="farvekoder" SIZE="1">
<OPTION value="Vælg en farvekode">Vælg en farvekode</OPTION>
<OPTION VALUE="blå"> Blå
<OPTION VALUE="grøn"> Grøn
<OPTION VALUE="Rød"> Rød
</SELECT>
<INPUT type="submit" value="submit">
</FORM>
Avatar billede puddelundercover Nybegynder
14. februar 2002 - 01:06 #21
nej, så er scriptet jo forkert... Jeg troede at du mente, at den skulle opdatere siden, hvis man valgte en farve...

if($farvekoder=="Vælg en favekode"){
## Koden, hvis man vælger Vælg en farve
}else if($farvekoder==""){
## Koden, hvis man ikke har trykket på submit
}else{
## Koden hvis man har valgt en farve
}

Så kan du selv lege puslespil :)

Header("Location: test.php"); Opdaterer siden,
echo($farvekoder); skriver den valgte farve
Avatar billede puddelundercover Nybegynder
14. februar 2002 - 01:09 #22
Orv.. shit... har fundet fejlen *G* det er en simpel stavefejl:
Den første linie i scriptet:
if($farvekoder=="Vælg en favekode"){

... der skal jo selvfølgelig være et r i farvekode

... så let kan det være at gøre noget galt *G*
Avatar billede danic Nybegynder
14. februar 2002 - 06:50 #23
Lige meget hvor meget jeg pusler kan jeg ikke gå den til at køre
test.php den tager bla.php hver gang.

<FORM method="post" action="bla.php">
<SELECT NAME="farvekoder" SIZE="1">
<OPTION value="Vælg en farvekode">Vælg en farvekode</OPTION>
<OPTION VALUE="blå"> Blå
<OPTION VALUE="grøn"> Grøn
<OPTION VALUE="Rød"> Rød
</SELECT>
<?
if($farvekoder=="Vælg en favekode"){
Header("Location: test.php");
}else if($farvekoder==""){
}else{
}
?>
<INPUT type="submit" value="submit">
</FORM>
Avatar billede puddelundercover Nybegynder
14. februar 2002 - 11:34 #24
prøv at se på:
if($farvekoder=="Vælg en favekode"){

favekode skal laves om til farvekode
Avatar billede danic Nybegynder
14. februar 2002 - 12:08 #25
Jeg fatter ikke hat og briller :(

Og hvorfor skal scriptet stå i toppen, skal det også stå før include filer?
i så fald hvordan ved scriptet at $farvekoder indeholder "Vælg en favekode"
da scriptet bliver kørt før HTML formen.
Avatar billede puddelundercover Nybegynder
14. februar 2002 - 12:13 #26
Scriptet skal stå helt i toppen (over includefilerne, hvis disse giver nogen som helst form for output).

Grunden til at scriptet ved, at $farvekoder indeholder "Vælg en farvekode" er, at når du trykker på knappen submit, så reloader den siden som blah.php?farvekoder=ditvalg

det kan scriptet så aflæse....

men du skal stadig rette stavefejlen i faRvekode
:)
Avatar billede danic Nybegynder
14. februar 2002 - 12:39 #27
Det er da smart, hermed 60 velfortjente points :)
Avatar billede puddelundercover Nybegynder
14. februar 2002 - 12:48 #28
*Bukker, og forsvinder ud i horisonten*
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