webForumDet fria alternativet

Navigation

9 svar · 333 visningar · startad av nummersju

nummersjuMedlem sedan aug. 2005198 inlägg
#1

Hej hej!
Jag skulle vilja ha lite hjälp med min navigation. Just nu kan jag göra så att länkn ser ut så här

index?s=foo

med denna kodsnutt

<? if ($_GET['s'] == "foo") { ?> 

foo

<? } elseif ($_GET['s'] == "bar") {  ?> 

bar

<?  } else { ?> 

foobar

<? } ?>

Men nu vill jag utöka min meny lite så att man kan gå från sida foo, som vi kan säga är ett arkiv, till nästa sida så här

index?s=foo=01

Hur löser jag detta?

MeleaMedlem sedan juli 20033 147 inlägg
#2
index.php?s=foo&id=1
if ($_GET['s'] == 'foo') {

   if ($_GET[id] == 1) {
      echo 'first id';
   } elseif ($_GET[id] == 2) {
      echo 'second id';
   }

} elseif ($_GET['s'] == 'bar') {

   echo 'bar';

} else {

   echo 'foobar';

}

Om det nu är så du menar... No offence annars, vet inte var dina php kunskaper ligger idag. :)

nummersjuMedlem sedan aug. 2005198 inlägg
#3

Hehe, :@ Nej då, dem är inte allt för bra. Men jag har provat lite och inte fått till det riktigt :)
Tack tack!

nummersjuMedlem sedan aug. 2005198 inlägg
#4

Har gjort detta nu

<a href="meny.php">Startsidan</a>
<a href="meny.php?s=asp">Asp-kurs</a>
<a href="meny.php?s=php">Php-kurs</a>
<a href="meny.php?s=css">Css-kurs</a>
<a href="meny.php?s=html">Html-kurs</a>
<a href="meny.php?s=gb">Gästbok</a>

<? if ($_GET['s'] == "asp") {  

   if ($_GET[id] == 1) {
      echo 'first id';
   } elseif ($_GET[id] == 2) {
      echo 'second id';
   } ?>

<? } elseif ($_GET['s'] == "php") { ?> 

Php - kurs

<? } elseif ($_GET['s'] == "css") { ?> 

Css - kurs

<? } elseif ($_GET['s'] == "html") { ?> 

Html - kurs

<? } elseif ($_GET['s'] == "gb") {  ?> 

Gästbok

<?  } else { ?> 

Startsidan

<? } ?>

Jag tycker inte att man ska behöva alla <?PHP-taggar, men om jag tar bort dem och bara har en i början och en i slutet så fungerar det ju inte.

Sedan funkar heller inte det du skrev Melea... :(

tydalMedlem sedan juni 20034 013 inlägg
#5

Det ska vara $_GET['id'] i stället för $_GET[id].

Sen skulle jag rekommendera att du i stället för att lägga in texterna php-kurs, css-kurs osv tar och skriver html-koden i separata filer som du sedan inkluderar. Byt ut alltså ut texten php-kurs mot:

include "phpkurs.php";

i stället (exempelvis). På så vis kan du dessutom ta bort alla extra ?> och <?.

nummersjuMedlem sedan aug. 2005198 inlägg
#6

Aha okej! Tackar så mycket för det! Ska prova direkt!

nummersjuMedlem sedan aug. 2005198 inlägg
#7
<?PHP
if ($_GET['s'] == "foo") {  

	if ($_GET['id'] == 1) {
		echo 'first id';
	} elseif ($_GET['id'] == 2) {
		echo 'second id';
	} else {
		echo 'foo';
	}

} elseif ($_GET['s'] == "bar") { 
	echo 'bar';

} else { 
	echo 'foobar';
}?>

Krympte koden lite, men det funkar ändå inte? För skriver jag:
meny.php?s=foo=1 kommer jag till startsidan eller
meny.php?s=foo?id=1 kommer jag också till startsidan

Hur ska jag göra? Och var kan man läsa mer om detta? $_GET? Så att jag kan lära mig lite själv :) Finns kanske på w3school eller php's sida? Har letat men inte hittat själv.

tydalMedlem sedan juni 20034 013 inlägg
#8

Det ska vara &-tecken mellan variablerna. Man har bara ett frågetecken och det talar om att "här börjar variablerna":

meny.php?s=foo&id=1

tydalMedlem sedan juni 20034 013 inlägg
#9

På php:s sida finns allt. Väldigt bra onlinedokumentation.

http://se.php.net/manual/en/language.variables.external.php

nummersjuMedlem sedan aug. 2005198 inlägg
#10

Tack du! :)

130 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)