|
| Få id fra en side Fra : Ukendt |
Dato : 19-08-06 21:33 |
|
Hej alle
Jeg skal til at omkode en hjemmeside fra asp/access til php/mysql, men
da jeg ikke har adgang til at kode i asp-koden eller på serveren, hvor
denne ligger, har jeg brug for at kunne finde noget bestemt fra
forskellige sider
Hvis man fx har links med id's i, findes der så en funktion, der kan
finde disse id's for en vha php?
Vi kan fx antage at linket ser således ud:
<a href="../brugeroplysninger.asp?id=243432" target="_blank">
Hvordan kan jeg få id'et ud der?
Jeg har tænkt, at det kan lade sig gøre vha. Regular Expression, men da
jeg ikke er så meget inde i disse endnu, vil jeg gerne have lidt hjælp
til at udskille id'et
Hilsen
Lasse
Ps. på forhånd tak for hjælpen
| |
Dan Storm (19-08-2006)
| Kommentar Fra : Dan Storm |
Dato : 19-08-06 22:04 |
|
at(nospam) skrev:
> Jeg har tænkt, at det kan lade sig gøre vha. Regular Expression, men da
> jeg ikke er så meget inde i disse endnu, vil jeg gerne have lidt hjælp
> til at udskille id'et
For at trække id'et ud af HTTP GET skal du benytte dig af den
prædifinerede variabel $_GET som er en superglobal.
fil.php:
<?php
echo $_GET['id'];
?>
Ovenstående echoer bare id til browseren igen.
(eg. http://host/fil.php?id=457987)
--
Dan Storm - storm at err0r dot dk / http://err0r.dk
Tro ikke brugerne vil gøre noget for at undgå dit killfilter
- Så vigtig er du heller ikke!
| |
Ukendt (19-08-2006)
| Kommentar Fra : Ukendt |
Dato : 19-08-06 22:12 |
|
Dan Storm wrote:
>
> For at trække id'et ud af HTTP GET skal du benytte dig af den
> prædifinerede variabel $_GET som er en superglobal.
>
> fil.php:
> <?php
>
> echo $_GET['id'];
>
> ?>
Det vidste jeg så at sige godt, men nu er det mere, når jeg får siden at
se som en html-fil, og det ikke er et link, der fører til min server
| |
Bertel Lund Hansen (20-08-2006)
| Kommentar Fra : Bertel Lund Hansen |
Dato : 20-08-06 00:24 |
|
at skrev:
> Vi kan fx antage at linket ser således ud:
> <a href="../brugeroplysninger.asp?id=243432" target="_blank">
> Hvordan kan jeg få id'et ud der?
$linkline="<a href='../brugeroplysninger.asp?id=243432' target='_blank'>";
$pos=strpos($linkline,'id=')+3;
$id_plus=substr($linkline,$pos);
$quote=strpos($id_plus,"'");
$id=substr($id_plus,0,$quote);
Problemer der ikke er taget højde for:
1. Andre variable der ender på id (det kunne f.eks. være tid).
Løses ved at teste på ?id= og ;id= (fra "&id").
2. Det forventes at parameterværdierne i strengen er omgivet af anførselstegn.
3. Jeg har hårdtkodet de anførselstegn som jeg selv bruger.
4. Det er utestet, men princippet er godt nok.
--
Bertel
http://bertel.lundhansen.dk/ http://fiduso.dk/
| |
Ukendt (20-08-2006)
| Kommentar Fra : Ukendt |
Dato : 20-08-06 09:57 |
|
Bertel Lund Hansen wrote:
> $linkline="<a href='../brugeroplysninger.asp?id=243432' target='_blank'>";
> $pos=strpos($linkline,'id=')+3;
Hvorfor bruger du +3 her?
Bertel Lund Hansen wrote:
> $id_plus=substr($linkline,$pos);
> $quote=strpos($id_plus,"'");
> $id=substr($id_plus,0,$quote);
>
> Problemer der ikke er taget højde for:
>
> 1. Andre variable der ender på id (det kunne f.eks. være tid).
> Løses ved at teste på ?id= og ;id= (fra "&id").
> 2. Det forventes at parameterværdierne i strengen er omgivet af anførselstegn.
> 3. Jeg har hårdtkodet de anførselstegn som jeg selv bruger.
> 4. Det er utestet, men princippet er godt nok.
>
Jeg havde regnet med en Regular Expression, da jeg havde regnet med, da
det vil give mig indblik i disse
1. Dett er let nok, da den er omgivet med enten ? eller ;
2. Det er den
Jeg siger endnu engang tak
| |
Bertel Lund Hansen (20-08-2006)
| Kommentar Fra : Bertel Lund Hansen |
Dato : 20-08-06 12:13 |
|
at skrev:
>> $linkline="<a href='../brugeroplysninger.asp?id=243432' target='_blank'>";
>> $pos=strpos($linkline,'id=')+3;
> Hvorfor bruger du +3 her?
Fordi jeg er interesseret i positionen lige *efter* id=. strpos()
giver mig den position der peger på i (starten af den søgte
streng). Hvis jeg havde søgt efter "ident=", havde jeg brugt +6.
> Jeg havde regnet med en Regular Expression, da jeg havde regnet med, da
> det vil give mig indblik i disse
Det kan sikkert også bruges, men da man skal finde noget med et
fast format, tror jeg at simple strengoperationer er nemmere.
Men jeg er ikke ekspert i reg. exp.
--
Bertel
http://bertel.lundhansen.dk/ http://fiduso.dk/
| |
Ukendt (20-08-2006)
| Kommentar Fra : Ukendt |
Dato : 20-08-06 14:09 |
|
Bertel Lund Hansen wrote:
> Fordi jeg er interesseret i positionen lige *efter* id=. strpos()
> giver mig den position der peger på i (starten af den søgte
> streng). Hvis jeg havde søgt efter "ident=", havde jeg brugt +6.
Ja okay, det kan jeg godt se
Nu har jeg erklæret en streng med det og brugt strlen i stedet ;)
> Det kan sikkert også bruges, men da man skal finde noget med et
> fast format, tror jeg at simple strengoperationer er nemmere.
>
> Men jeg er ikke ekspert i reg. exp.
Nåhr okay, men jeg takker i hvertfald mange gange for hjælpen, og du kan
jo selvfølgelig have ret i, at det hjælper, når det er et fast format,
og denne kan jo også bruges, hvis dataerne ligger inde i en tabel eller
lignende
| |
Bertel Lund Hansen (20-08-2006)
| Kommentar Fra : Bertel Lund Hansen |
Dato : 20-08-06 14:25 |
| | |
|
|