Avatar billede zetn Nybegynder
21. februar 2006 - 12:55 Der er 20 kommentarer og
1 løsning

If sætning

Hej, hvordan laver jeg så hvis "keyword" findes i fx "search.php?keyword" at den skal skrive en ting, og hvis ikke noget andet.
Avatar billede gizmo-gizmo Nybegynder
21. februar 2006 - 13:05 #1
search.php?keyword=heyyo
..
if (isset($_GET['keyword']))
{
//do something
}
else
{
  //something else
}


eller?
Avatar billede net-base.dk Nybegynder
21. februar 2006 - 14:29 #2
Hvis du vil have det så den siger noget forskelligt alt efter hvad der er indtastet?

tester om $_GET["keyword"] er sat og er den det så tester den på hvad den indeholder og er den ikke så tester den slet ikke men siger bare at den ikke er sat

if( isset($_GET["keyword"]) ) {
    if( $_GET["keyword"] == "ting1" ) {
        echo "ting1";
    } elseif( $_GET["keywork"] == "ting2" ) {
        echo "ting2";
    } elseif( $_GET["keywork"] == "ting3" ) {
        echo "ting3";
    }
}
else
{
    echo "Keyword ikke sat";
}
Avatar billede zetn Nybegynder
21. februar 2006 - 16:08 #3
Hej, jeg vil gerne hav edet sådan at så længe keyword eksisterer i URLen skal den skrive noget (1), og hvis ikke skrive noget andet (2).

search.php?keyword

Skriv 1

search.php?keyword=søg

skriv 1

search.php

skriv 2
Avatar billede gizmo-gizmo Nybegynder
21. februar 2006 - 16:26 #4
Det gør min kode :-)  Du mangler bare lige at tilføje "noget echo."
Avatar billede zetn Nybegynder
21. februar 2006 - 17:01 #5
Får følgende fejlmeddelelse:

Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in
Avatar billede gizmo-gizmo Nybegynder
21. februar 2006 - 17:04 #6
Det vidner om en syntax fejl, så det ville være lidt nemmere hvis du postede linjen hvor fejlen opstår eller lidt mere kode.
Avatar billede zetn Nybegynder
21. februar 2006 - 17:15 #7
Det er til oscommerce, så der er en del kode der skal pastes hvis det er.


Fejlen sker i den kode du har oplyst.
Avatar billede net-base.dk Nybegynder
22. februar 2006 - 06:55 #8
Sådan en update på min kode så nu skriver den også noget hvis keyword er sat men tom.

if( isset($_GET["keyword"]) ) {
    if( $_GET["keyword"] == "" ) {
        echo "ting0";
    } elseif( $_GET["keyword"] == "ting1" ) {
        echo "ting1";
    } elseif( $_GET["keywork"] == "ting2" ) {
        echo "ting2";
    } elseif( $_GET["keywork"] == "ting3" ) {
        echo "ting3";
    }
}
else
{
    echo "Keyword ikke sat";
}
Avatar billede plazm Nybegynder
22. februar 2006 - 06:59 #9
Og lige for at fjerne stavefejl

if( isset($_GET["keyword"]) ) {
    if( $_GET["keyword"] == "" ) {
        echo "ting0";
    } elseif( $_GET["keyword"] == "ting1" ) {
        echo "ting1";
    } elseif( $_GET["keyword"] == "ting2" ) {
        echo "ting2";
    } elseif( $_GET["keyword"] == "ting3" ) {
        echo "ting3";
    }
}
else
{
    echo "Keyword ikke sat";
}
Avatar billede net-base.dk Nybegynder
22. februar 2006 - 07:29 #10
Hey Plazm-> Må man spørge hvad du har rettet kan sgu ikke lige få øje på det...
Avatar billede net-base.dk Nybegynder
22. februar 2006 - 07:30 #11
Nå der... okay har fundet det keywork => keyword
Avatar billede zetn Nybegynder
22. februar 2006 - 10:21 #12
Hej igen, nu er den der næsten.

Den skal egentlig kun følgende:

Eksistere keyword i URL Skriv 1

Ellers skriv 2

Det er ligegyldig om keyword har en værdi, eller hvad værdien er.
Avatar billede net-base.dk Nybegynder
22. februar 2006 - 10:24 #13
okay...

if( isset($_GET["keyword"])) {
    echo "Keyword er sat";
} else {
    echo "Keyword er ikke sat";
}

Håber du kan bruge dette...
Avatar billede zetn Nybegynder
22. februar 2006 - 10:34 #14
Ser ud som om jeg har fået det til at virke... Lige sidste spørgsmål, hvordan udskriver jeg keyword værdien i første echo?
Avatar billede net-base.dk Nybegynder
22. februar 2006 - 10:36 #15
svar!

echo $_GET["keyword"];
Avatar billede zetn Nybegynder
22. februar 2006 - 10:42 #16
if( isset($_GET["keywords"]) ) {
    if( $_GET["keywords"] == "" ) {
        echo "Søgeresultater";
    } elseif( $_GET["keywords"] <> "" ) {
        echo "Søgeresultater " . $_GET["keyword"] . "";
    }
}
else
{
    echo "Produkt";
}

Hvad er lige fejlen her, udskriver bare søgeresultater.
Avatar billede net-base.dk Nybegynder
22. februar 2006 - 10:43 #17
Hvad er fejlen?
Avatar billede zetn Nybegynder
22. februar 2006 - 10:44 #18
Den udskriver ikke værdien af keywords
Avatar billede net-base.dk Nybegynder
22. februar 2006 - 10:44 #19
Før
echo "Søgeresultater " . $_GET["keyword"] . "";

Efter
echo "Søgeresultater " . $_GET["keywords"] . "";

Du skal lige have et "s" i enden af keyword
Avatar billede zetn Nybegynder
22. februar 2006 - 10:46 #20
Doh, små irriterende fejl!

Du må have mange tak for hjælpen, det fungere nu!
Avatar billede net-base.dk Nybegynder
22. februar 2006 - 10:50 #21
hehe... har snart selv lavet mange af dem, man lærer med tiden at kigge efter sådan nogle onsvage slå fejl inden man bliver iriteret...

Håber du har fået noget ud af det...

Hvis du ikke har helt styr på if & else sætning så læs denne guide http://www.webcafe.dk/artikler/php/forgreninger/
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