Ga naar inhoud

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


anoniem

Aanbevolen berichten

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]
Link naar reactie
[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.
Link naar reactie
[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 [url]http://www.mijnhomepage.nl/htaccess/redirect-htaccess.php[/url] THNX.
Link naar reactie
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).
Link naar reactie
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) ;)
Link naar reactie
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é
Link naar reactie
[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.
Link naar reactie
[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
Link naar reactie
[quote:af634b26c1="shoekie"]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.[/quote:af634b26c1]Dus een script moet verbinding maken met een database om te weten te komen welk bestand hij moet includen?... :roll:...Doe dit niet op een drukke site... [quote:af634b26c1="BasHamar"]Zijn er ook dergelijk trucjes voor MySQL waar men op bedacht moet zijn?[/quote:af634b26c1]Ja, simpel voorbeeldje: [code:1:af634b26c1]$username=$_POST['username']; $password=$_POST['password']; $sql="SELECT userid FROM user WHERE username = '$username' AND password = '$password'";[/code:1:af634b26c1] Stel dat ik nu de SQL-string uitvoer en als ik een userid krijg dan weet ik dat diegene toegang heeft..... Vul dan als password in [i:af634b26c1] ' or 1=1 or password = '[/i:af634b26c1]... :o
Link naar reactie

Om een reactie te plaatsen, moet je eerst inloggen

Gast
Reageer op dit topic

×   Geplakt als verrijkte tekst.   Herstel opmaak

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

  • Populaire leden

    Er is nog niemand die deze week reputatie heeft ontvangen.

  • Leden

    Geen leden om te tonen

×
×
  • Nieuwe aanmaken...