Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Webprogrammeren & scripting

[php] link als www.urrel.com/index.php?cat=blaat

Remytje
14 antwoorden
  • Hoi,

    Ik zie tegenwoordig op steeds meer sites links al 'www.site.nl/file.php?iets=blaat'. Nu vraag ik me af: Hoe doe je dit? Ik heb geen idee hoe je hiernaar zou moeten zoeken op google oid, want ik weet niet hoe het heet :(.

    Hoop dat jullie me kunnen helpen.

    Jochem
  • [code:1:e8ed49cc11]<a href="file.php?iets=blaat">blaat</a>[/code:1:e8ed49cc11]
  • Ja, linken ernaar snap ik wel, maar ik bedoel: hoe onstaat zoiets. Is dit dmv databases, en dat er dan info uit een database wordt gehaald oid?

    Jochem
  • De standaardwebpage is dan "www.site.nl/file.php", waarbij de gegevens "iets=blaat" uit een database (b.v. MySQL) gehaald worden.
  • Kijk, de vraagstelling wordt ineens een stuk duidelijker :) . Ik raad je af om het direct zo te doen op een webpagina. Google vindt het niet leuk namelijk (met .htaccess kun je er mooie URI's van maken), maar om een leuk (gevaarlijk?) voorbeeld te geven:[code:1:038c4de55d]<?php
    $include = $_GET['iets'].".php";
    include($include);
    ?>[/code:1:038c4de55d]
  • Dank. Het is me meteen een stuk duidelijker :).

    Jochem
  • [quote:e52ea52e23="XBL"]Hoi,

    Ik zie tegenwoordig op steeds meer sites links al 'www.site.nl/file.php?iets=blaat'. Nu vraag ik me af: Hoe doe je dit? Ik heb geen idee hoe je hiernaar zou moeten zoeken op google oid, want ik weet niet hoe het heet :(.

    Hoop dat jullie me kunnen helpen.

    Jochem[/quote:e52ea52e23]

    In dit geval is 'iets' dus de variabele die in de link wordt meegestuurd en 'blaat' de waarde van de variabele. Je kunt er van alles mee doen.
  • [quote:0ff1a53bec="termin8or"]Google vindt het niet leuk namelijk (met .htaccess kun je er mooie URI's van maken), maar om een leuk (gevaarlijk?) voorbeeld te geven:[code:1:0ff1a53bec]<?php
    $include = $_GET['iets'].".php";
    include($include);
    ?>[/code:1:0ff1a53bec][/quote:0ff1a53bec]

    Wat is daar gevaarlijk aan?
    En heb je ook een voorbeeldje van de URI's met .htaccess?
    Want volgens mij bedoel je iets anders dan http://www.mijnhomepage.nl/htaccess
    edirect-htaccess.php


    THNX.
  • Ik _hoor_ altijd dat het gevaarlijk is. Door de extensie te laten bepalen door de maker van het script is het al iets minder erg, maar mensen zouden op deze manier bijvoorbeeld toevalliger wijs je 'config.php' kunnen vinden als je dat ding al zo noemt, door deze URI op te geven: ?iets=config . En mocht er dan iets fout gaan etc. dan ligt je broncode dus voor het grijpen en kunnen ze leuke dingen met je DB gaan doen of een scriptjes loslaten op de server etc.

    Over .htaccess. Ik geef wel een paar voorbeelden. Het volgende zorgt dat je domein niet meer met .www begint (is dus wel redirect):[code:1:5dfca35945]RewriteCond %{HTTP_HOST} ^www\.annevankesteren\.nl$ [NC]
    RewriteRule ^(.*)$ http://annevankesteren.nl/$1 [R=301,L][/code:1:5dfca35945]Maar m.i. zou dat het op elke site moeten gebeuren. www is gewoon heel erg oud.

    Een voorbeeldje wat weergeeft wat ik bedoelde:[code:1:5dfca35945]RewriteRule ^item/(.*)$ item.php?id=$1[/code:1:5dfca35945]Alle aanvragen die er zo uitzien: item/45 worden binnen de server (dus ook voor PHP oid!!!) herschreven naar item?id=45 waardoor je hem makkelijk met $_GET['id'] kunt ophalen.

    Hierdoor indexeert Google vele malen beter (hij stopt bij ? in de meeste gevallen) daarnaast wordt de link duidelijker en herkenbaarder.

    Er zijn echter ook andere methoden: http://alistapart.com/articles/succeed/

    Het is maar net waar je de belasting wilt leggen, bij PHP of .htaccess (beter is eik om het bij apache te regelen, maar niet iedereen heeft toegang tot z'n server).
  • @Termin8or: THNX, daar ga ik maar eens even mee aan de slag.
  • je kunt ook een functie schrijven waardoor je alle links heen laat gaat gaan. als de in de naam van de useragent (browser) het woordje "bot" voorkomt (zoals in "googlebot") bepaalde param. uit de URL verwijderen of herschrijven of wat dan ook.

    dan zijn de mogelijkheden eindeloos, ook voor iedereen die niets van htaccess en apchetaal afweet (zoals ik) ;)
  • Tis misschien makkelijk om het met een database te doen. Ik gebruik hier zelf MySQL voor.
    Ja gaat dan naar index.php?ID=x ofzo. Vervolgens doe je zoiets in MySQL als "SELECT * FROM website WHERE ID = x;". Dan zorg je ervoor dat je in je database de bestandsnaam hebt staan en dan kan je die met "include($filename);" ofzo ergens in zetten.
    Zo kan je ook heel makkelijk de titel per pagina later verschillen enzo. Maar het is natuurlijk de vraag of je een server met SQL ofzo tot je beschikking hebt.

    Als je dat hebt is het, vind ik, zeker handig om deze te gebruiken.

    Suc6,
    René
  • [quote:ed1b3281ac][code:1:ed1b3281ac]<?php
    $include = $_GET['iets'].".php";
    include($include);
    ?>[/code:1:ed1b3281ac]

    Wat is daar gevaarlijk aan?
    [/quote:ed1b3281ac]

    surf naar http://webpagina/blaat.php?iets=/etc/shadow^D^D^D^D

    als 't goed is verwijdert ie dan de .php en included ie (mits je rechten hebt) je shadow file. Je password file over het internet sturen is nooit slim, zelfs al is ie encrypted.
  • [quote:a175b7ebf5]surf naar http://webpagina/blaat.php?iets=/etc/shadow^D^D^D^D
    als 't goed is verwijdert ie dan de .php en included ie (mits je rechten hebt) je shadow file.[/quote:a175b7ebf5]Cool! Dit wist ik dus niet… Gelukkig maak ik geen gebruik meer van deze methode, maar toch… Zijn er ook dergelijk trucjes voor MySQL waar men op bedacht moet zijn?

    - Bas

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.