.php?p=1

Status
Niet open voor verdere reacties.

wesselh

Gebruiker
Lid geworden
2 mrt 2007
Berichten
132
Hallo mensen, ik zie vaak bij php websites dat er in de adres balk komt te staan: index.php?p=1. Wat is het nut hiervan en hoe wordt het gedaan en kan het ook in HTML?:D

Alvast bedankt:thumb:
 
Zo ver ik weet is het een manier om URL's korter te maken.
(Ik kan het uiteraard weer eens fout hebben)
Ik zie het ook vaak zo:
/page.php?pid=en_500
Dus page.php dan page ID, en= engels, 500 = page ID

In HTML is dot volgens mij niet mogelijk!
 
maar volgens mij heb ik het wel ooit eens gezien.
Misschien hebben ze toen php met html gecombineert?
 
Ik dacht ook dit vaker gezien te hebben, ik heb die zelf ook wel eens gemaakt met html. Iets met formulieren ;)

Ik zal even de URL opzoeken.

GooGooJansen

EDIT: net ff snel gemaakt, (site werkt niet helemaal maar..) KLIK

Dus..., kan ook met htm(l). ;)
 
Laatst bewerkt:
klopt, maar als ik h=2 intyp, krijg ik precies hetzelfde, mijn bedoeling is dat er dan een andere pagina komt...
 
De reden ervan is dat je een veel dynamischer website kunt maken. Ook scheelt het je typwerk.

Als jij voor bijvoorbeeld een nieuwsscript 1 keer aangeeft hoe je het wilt hebben dan kun je in samenwerking met een database elke keer de gegevens invullen aan de hand van variabelen...

PHP:
//Database inhoud
id | titel | bericht

1 | Welkom | balbalbalbalbalbalbalbla
2 | Nieuwe sponsor | enzenzeneznezneznzenzezzeenzn
3 | Server problemen | etcetcetcetcetcetcetc

//Database query
$nieuwsQuery = "SELECT titel, bericht FROM nieuws WHERE id='$_GET[news_id]'";
$nieuwsResult = mysql_query($nieuwsQuery) or die (mysql_error());
$nieuwsRow = mysql_fetch_array($nieuwsResult);

// Layout van nieuwsbericht
echo '<h1>'. $nieuwsRow['titel'] .'</h1><br />
      <div id="news">'. $nieuwsRow['bericht'] .'</div>';
Wanneer je nu de pagina aanroept met ?news_id=1 dan vult hij de layout met de gegevens van het bericht met id 1, bij ?news_id=2 doet hij dat met de gegevens van id 2.
 
Laatst bewerkt:
klopt, maar als ik h=2 intyp, krijg ik precies hetzelfde, mijn bedoeling is dat er dan een andere pagina komt...

weet ik, toen was ik er pas mee begonnen. Ik ben daar niet zo goed in, maar het kan wel. Dat weet ik zeker:rolleyes:

GooGooJansen
 
Ik gebruik dingen zoals ?p=1 voor mijn design en menu etc... maar 1 keer te moeten schrijven.

ik maak dan index.php, schrijf geen tekst maar zet wel titel en menu erin, en schrijf op de plaats waar er tekst moet komen een php script dat de tekst moet "includen" ( de tekst moet weergeven dus )

via de adresbalk ( vb ?p=1 ) weet dat php script dat hij de tekst van pagina 1 zal moeten weergeven.

Dit systeem is vergelijkbaar met frame's :d Alleen vind ik het veel gemakkelijker
 
Deze misschien ?

je kunt het ook met dit script doen:
PHP:
<?php  

if (file_exists($_GET['id'] . '.php'))  
{  
    include $_GET['id'] . '.php';  
}  
elseif (empty($_GET['id'])) 
{  
    include 'index.php';  
}  
else 
{  
include 'error.php';  
}  

?>
Dan neem je bij news.php en die meot dan in de zelfde map staan en dan doe je paginanaam.php?id=news (zonder.php)

Of als je .html wil moet je
PHP:
if (file_exists($_GET['id'] . '.php'))  
{  
    include $_GET['id'] . '.php';
veranderen in dit :
PHP:
if (file_exists($_GET['id'] . '.html))  
{  
    include $_GET['id'] . '.html';
Dat is dan voor .htmL

En zonder L is het
PHP:
if (file_exists($_GET['id'] . '.htm'))  
{  
    include $_GET['id'] . '.htm';
En er staat ...$_GET['id']... id kan je daar verander voor p als je dat wilt en dan kan je de pagina oproepen via paginanaam.php?p=news

o-ja de pagina's worden dan ingevoegt

Als je vragen heb kan je die stellen

gr Tom

(P.S. Dit script heb ik niet zelf gemaakt maar komt van www.anouksweb.nl. Ik maak er wel gebruik van op me site)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan