/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Fjerne index.*.* eller default.*.* fra HTT~
Fra : StartLinket.dk


Dato : 02-02-02 01:44

Hvordan fjerner jeg enten index.*.* eller default.*.* alt efter hvilken der
findes?
Jeg har pt. dette:

echo eregi_replace("/index*.*", "", $HTTP_REFERER);
echo "<BR>";
echo eregi_replace("/default*.*", "", $HTTP_REFERER);

Men den vil jo gøre begge dele og ikke kun tage den hvor at det kan lade sig
gøre...
Findes der andre og bedre måder at gøre det på?
Og er der andre end index og default at der bliver brugt?

--
M.v.h Morten Jørgensen
Bannerbytte & tekstlinkbytte
HELE 1:1 RATIO!!!
www.StartLinket.dk



 
 
Sune Fibæk (03-02-2002)
Kommentar
Fra : Sune Fibæk


Dato : 03-02-02 09:34

....and I quote StartLinket.dk, who on Saturday 02 February 2002 01:43,
wrote::

> Hvordan fjerner jeg enten index.*.* eller default.*.* alt efter
> hvilken der findes?

Mener du i server opsætningen eller sådan at brugeren ikke kan se
hvilken der anvendes?

> Jeg har pt. dette:
>
> echo eregi_replace("/index*.*", "", $HTTP_REFERER);
> echo "<BR>";
> echo eregi_replace("/default*.*", "", $HTTP_REFERER);
>
> Men den vil jo gøre begge dele og ikke kun tage den hvor at det kan
> lade sig gøre...

Ja, du kan jo bruge en

if ($HTTP...) {
$eregi_...
}
else ...

(Se manualen for yderligere information.)

> Findes der andre og bedre måder at gøre det på?
> Og er der andre end index og default at der bliver brugt?

Ja. Start med "Websters Dictionary of Current English"
(http://www.m-w.com/dictionary.htm), gå videre med diverse andre
ordbøger... Hovedparten af de ord (med et arbitrært antal punktummer
mellem dem) du finder vil kunne bruges som startside. Det er op til
server administratoren.

Hvad er det helt præcist du vil bruge det til? Beklager men jeg kan
ikke se formålet.


--
$ cat $HOME/.sig
cat: /home/sune/.sig: No such file or directory

fibaek.dk

StartLinket.dk (03-02-2002)
Kommentar
Fra : StartLinket.dk


Dato : 03-02-02 10:47

"Sune Fibæk" <oh-wonderful-spam@fibaek.dk> wrote in message
> Mener du i server opsætningen eller sådan at brugeren ikke kan se
> hvilken der anvendes?

Jeg er igang med at lave et system som på netstjernen.dk, hvor man sætter en
html kode på sin hjemmeside og det skal så gemme ens $HTTP_REFERER i en
database i 48 timer som hvis der findes sådan en, så bliver ens link
fremhævet i min linkdatabase.
Men f.eks. hvis http://www.jubii.dk ligger i min linkdatabase og at de
sætter html koden på deres side, så hvis filen findes på f.eks. index.html,
så skal den jo fjerne /index.html fra slutningen af $HTTP_REFERER, ellers
vil de to adresser jo ikke være ens.
Det skal også virke på andre end index, som f.eks. default.
Jeg ved ikke om det kan laves så den kan finde ud af at sammenligne de to
adresser uden at fjerne noget...

> > Jeg har pt. dette:
> >
> > echo eregi_replace("/index*.*", "", $HTTP_REFERER);
> > echo "<BR>";
> > echo eregi_replace("/default*.*", "", $HTTP_REFERER);
> >
> > Men den vil jo gøre begge dele og ikke kun tage den hvor at det kan
> > lade sig gøre...
>
> Ja, du kan jo bruge en
>
> if ($HTTP...) {
> $eregi_...
> }
> else ...
>
> (Se manualen for yderligere information.)

Findes der da en funktion at der kan sammenligne sådan to adresser?

> > Findes der andre og bedre måder at gøre det på?
> > Og er der andre end index og default at der bliver brugt?
>
> Ja. Start med "Websters Dictionary of Current English"
> (http://www.m-w.com/dictionary.htm), gå videre med diverse andre
> ordbøger... Hovedparten af de ord (med et arbitrært antal punktummer
> mellem dem) du finder vil kunne bruges som startside. Det er op til
> server administratoren.

Det forstod jeg ikke lige helt hvad var for noget...

> Hvad er det helt præcist du vil bruge det til? Beklager men jeg kan
> ikke se formålet.

Det er beskrevet i toppen...

--
M.v.h Morten Jørgensen
Bannerbytte & tekstlinkbytte
HELE 1:1 RATIO!!!
www.StartLinket.dk



Sune Fibæk (03-02-2002)
Kommentar
Fra : Sune Fibæk


Dato : 03-02-02 11:55

....and I quote StartLinket.dk, who on Sunday 03 February 2002 10:47,
wrote::

> Men f.eks. hvis http://www.jubii.dk ligger i min linkdatabase og at de
> sætter html koden på deres side, så hvis filen findes på f.eks.
> index.html, så skal den jo fjerne /index.html fra slutningen af

Så det du gerne vil er at fjerne alt efter den tredje "/" i en url på
formen http://domæne.tld/siden.der.hentes.automagisk ?

Kig lidt de forskellige string functions i php:
http://dk.php.net/manual/en/ref.strings.php (explode kunne f.eks. være
interessant)

Sådan som jeg forstår det så er det ikke nødvendigvis index.html som er
referer. Jeg kunne f.eks. godt have min forside på en helt anden side
ved at senden en header("location ./forsiden.side"); og så vil
ovenstående virke.

> $HTTP_REFERER, ellers vil de to adresser jo ikke være ens.
> Det skal også virke på andre end index, som f.eks. default.
> Jeg ved ikke om det kan laves så den kan finde ud af at sammenligne de
> to adresser uden at fjerne noget...
>
>> if ($HTTP...) {
>> $eregi_...
>> }
>> else ...
>>
>> (Se manualen for yderligere information.)
>
> Findes der da en funktion at der kan sammenligne sådan to adresser?

Sammenligne? Almindelig if...elseif...else kan gå igenne de muligheder
du finder relevante og så kun sende den aktuelle videre i dit system.

(Hint: http://dk.php.net/manual/en/control-structures.php)

>
>> Ja. Start med "Websters Dictionary of Current English"
[...]
>
> Det forstod jeg ikke lige helt hvad var for noget...

Næ, det blev også lidt kryptisk... Pointen var at index.html bare en en
af uendeligt mange muligheder. F.eks. er der intet i vejen for at man
sætter serveren til at anvende "min.egen.startside.hjemmeside" i stedet
for index.html og så bede serveren om at parse det som php. Det er en
sær idé, men det er muligt.

--
$ cat $HOME/.sig
cat: /home/sune/.sig: No such file or directory

fibaek.dk

StartLinket.dk (03-02-2002)
Kommentar
Fra : StartLinket.dk


Dato : 03-02-02 18:02

"Sune Fibæk" <oh-wonderful-spam@fibaek.dk> wrote in message
> ...and I quote StartLinket.dk, who on Sunday 03 February 2002 10:47,
> wrote::
>
> > Men f.eks. hvis http://www.jubii.dk ligger i min linkdatabase og at de
> > sætter html koden på deres side, så hvis filen findes på f.eks.
> > index.html, så skal den jo fjerne /index.html fra slutningen af
>
> Så det du gerne vil er at fjerne alt efter den tredje "/" i en url på
> formen http://domæne.tld/siden.der.hentes.automagisk ?
>
> Kig lidt de forskellige string functions i php:
> http://dk.php.net/manual/en/ref.strings.php (explode kunne f.eks. være
> interessant)

Måske, men jeg fatter aldrig en skide af hvad den manual dér siger...
Den kommer med nogle eksempler som jeg ikke syntes at kunne bruge...

> Sådan som jeg forstår det så er det ikke nødvendigvis index.html som er
> referer. Jeg kunne f.eks. godt have min forside på en helt anden side
> ved at senden en header("location ./forsiden.side"); og så vil
> ovenstående virke.

Det er lige netop det at jeg gerne ville have lavet så at jeg ikke selv skal
skrive alle mulighederne selv...

> > $HTTP_REFERER, ellers vil de to adresser jo ikke være ens.
> > Det skal også virke på andre end index, som f.eks. default.
> > Jeg ved ikke om det kan laves så den kan finde ud af at sammenligne de
> > to adresser uden at fjerne noget...
> >
> >> if ($HTTP...) {
> >> $eregi_...
> >> }
> >> else ...
> >>
> >> (Se manualen for yderligere information.)
> >
> > Findes der da en funktion at der kan sammenligne sådan to adresser?
>
> Sammenligne? Almindelig if...elseif...else kan gå igenne de muligheder
> du finder relevante og så kun sende den aktuelle videre i dit system.

Ja så den f.eks. kunne se at http://www.jubii.dk/index.php og www.jubii.dk
var ens...

> (Hint: http://dk.php.net/manual/en/control-structures.php)
>
> >
> >> Ja. Start med "Websters Dictionary of Current English"
> [...]
> >
> > Det forstod jeg ikke lige helt hvad var for noget...
>
> Næ, det blev også lidt kryptisk... Pointen var at index.html bare en en
> af uendeligt mange muligheder. F.eks. er der intet i vejen for at man
> sætter serveren til at anvende "min.egen.startside.hjemmeside" i stedet
> for index.html og så bede serveren om at parse det som php. Det er en
> sær idé, men det er muligt.

Okay... Men index er vel mest benyttet...

--
M.v.h Morten Jørgensen
Bannerbytte & tekstlinkbytte
HELE 1:1 RATIO!!!
www.StartLinket.dk



Sune Fibæk (03-02-2002)
Kommentar
Fra : Sune Fibæk


Dato : 03-02-02 22:13

....and I quote StartLinket.dk, who on Sunday 03 February 2002 18:01,
wrote::

>> Kig lidt de forskellige string functions i php:
>> http://dk.php.net/manual/en/ref.strings.php (explode kunne f.eks.
>> være interessant)
>
> Måske, men jeg fatter aldrig en skide af hvad den manual dér siger...
> Den kommer med nogle eksempler som jeg ikke syntes at kunne bruge...

$url = explode("/",$HTTP_REFERER);
# domænenavn:
echo $url[2];

Men for at sikre dig mod at en eller anden ikke lige har adgang til
domæneroden (og måske har siden: http://domæne.tld/mappe/index.html) er
du nød til at tælle antallet af "/" og så kun fjerne alt efter den
sidste "/".

Docs: http://dk.php.net/manual/en/function.explode.php

Further reading: http://dk.php.net/manual/en/function.array-pop.php

>> Sådan som jeg forstår det så er det ikke nødvendigvis index.html som
>> er referer. Jeg kunne f.eks. godt have min forside på en helt anden
>> side ved at senden en header("location ./forsiden.side"); og så vil
>> ovenstående virke.
>
> Det er lige netop det at jeg gerne ville have lavet så at jeg ikke
> selv skal skrive alle mulighederne selv...
>

Det betyder vel ikke noget hvilken default side der hentes fra
browseren. Ud fra ovenstående eksempel sendes brugeren blot videre til
domænet (og evt. relevante undermapper). Så er det da underordnet hvad
default siden hedder.

>> Sammenligne? Almindelig if...elseif...else kan gå igenne de
>> muligheder du finder relevante og så kun sende den aktuelle videre i
>> dit system.
>
> Ja så den f.eks. kunne se at http://www.jubii.dk/index.php og
> www.jubii.dk var ens...

Det kan den sagtens, men du kan jo ikke være sikker på at de to rent
faktisk /er/ identiske. Hvad nu hvis nogen bruger domæne.tld/?bruger=a
og domæne.tld/?bruger=b så vil de eneste forskel i referreren være i de
forskellige variable der sendes med. Det er givetvis derfor netstjernen
præcisere at koden /skal/ igge på forsiden af sitet. Ellers kan referer
kikse.
>
>> Næ, det blev også lidt kryptisk... Pointen var at index.html bare en
>
> Okay... Men index er vel mest benyttet...

Tja, mon ikke?


--
$ cat $HOME/.sig
cat: /home/sune/.sig: No such file or directory

fibaek.dk

StartLinket.dk (05-02-2002)
Kommentar
Fra : StartLinket.dk


Dato : 05-02-02 17:41

"Sune Fibæk" <oh-wonderful-spam@fibaek.dk> wrote in message
> $url = explode("/",$HTTP_REFERER);
> # domænenavn:
> echo $url[2];

Hvad er det så at det gør? Jeg har siddet i lang tid nu og kigget det
igennem, men jeg kan stadig ikke se hvordan at det fungerer...

> Men for at sikre dig mod at en eller anden ikke lige har adgang til
> domæneroden (og måske har siden: http://domæne.tld/mappe/index.html) er
> du nød til at tælle antallet af "/" og så kun fjerne alt efter den
> sidste "/".
>
> Docs: http://dk.php.net/manual/en/function.explode.php

Det er jo det at du har brugt øverst i svaret her...

> Further reading: http://dk.php.net/manual/en/function.array-pop.php

Hvad er så det og hvordan fungerer dét?

> >> Sådan som jeg forstår det så er det ikke nødvendigvis index.html som
> >> er referer. Jeg kunne f.eks. godt have min forside på en helt anden
> >> side ved at senden en header("location ./forsiden.side"); og så vil
> >> ovenstående virke.
> >
> > Det er lige netop det at jeg gerne ville have lavet så at jeg ikke
> > selv skal skrive alle mulighederne selv...
> >
>
> Det betyder vel ikke noget hvilken default side der hentes fra
> browseren. Ud fra ovenstående eksempel sendes brugeren blot videre til
> domænet (og evt. relevante undermapper). Så er det da underordnet hvad
> default siden hedder.
>
> >> Sammenligne? Almindelig if...elseif...else kan gå igenne de
> >> muligheder du finder relevante og så kun sende den aktuelle videre i
> >> dit system.
> >
> > Ja så den f.eks. kunne se at http://www.jubii.dk/index.php og
> > www.jubii.dk var ens...
>
> Det kan den sagtens, men du kan jo ikke være sikker på at de to rent
> faktisk /er/ identiske. Hvad nu hvis nogen bruger domæne.tld/?bruger=a
> og domæne.tld/?bruger=b så vil de eneste forskel i referreren være i de
> forskellige variable der sendes med. Det er givetvis derfor netstjernen
> præcisere at koden /skal/ igge på forsiden af sitet. Ellers kan referer
> kikse.
> >
> >> Næ, det blev også lidt kryptisk... Pointen var at index.html bare en
> >
> > Okay... Men index er vel mest benyttet...
>
> Tja, mon ikke?



Sune Fibæk (05-02-2002)
Kommentar
Fra : Sune Fibæk


Dato : 05-02-02 19:41

....and I quote StartLinket.dk, who on Tuesday 05 February 2002 17:40,
wrote:

>> $url = explode("/",$HTTP_REFERER);
>> # domænenavn:
>> echo $url[2];
>
> Hvad er det så at det gør? Jeg har siddet i lang tid nu og kigget det
> igennem, men jeg kan stadig ikke se hvordan at det fungerer...

Explode giver dig et array med de elementer som strengen bliver
splittet op. Dette array har jeg $url. Jeg udskriver så 3. værdi i min
array med "echo $url[2]". Se http://dk.php.net/manual/en/ref.array.php
for mere information om arrays.

>> Docs: http://dk.php.net/manual/en/function.explode.php
>
> Det er jo det at du har brugt øverst i svaret her...

Ja, det er dokumentationen til den funktion jeg har brugt i det håb at
du måtte ønske at lære mere om funktionen.

>> Further reading: http://dk.php.net/manual/en/function.array-pop.php
>
> Hvad er så det og hvordan fungerer dét?

Det står i manualen. Du fjerner det sidste element i ovenstående array
og kan dermed udskrive resten af din referer uden sidehenvisning.

--
$ cat $HOME/.sig
cat: /home/sune/.sig: No such file or directory

http://fibaek.dk

StartLinket.dk (05-02-2002)
Kommentar
Fra : StartLinket.dk


Dato : 05-02-02 20:32

"Sune Fibæk" <oh-wonderful-spam@fibaek.dk> wrote in message
> Explode giver dig et array med de elementer som strengen bliver
> splittet op.

Splittet op... Bliver splittet op med?...
Jeg forstår ikke hvad du skriver...
Efter hvad jeg kan se så tager den på en eller anden måde det at der ligger
mellem / og / men kun det ene sted...
Meget ulogisk efter min meningen...
Hvorfor skrev du?: # domænenavn:

> Dette array har jeg $url.

Du mangler vidst nogle ord: "sat til" $url

> Jeg udskriver så 3. værdi i min
> array med "echo $url[2]".

3. værdi?... Du mener det 3. "/" ?...

> Se http://dk.php.net/manual/en/ref.array.php
> for mere information om arrays.

Jamen jeg fatter ikke hvad der står i den manual selvom at jeg sidder i lang
tid for at prøve på at forstå den...
Måske er det alle de svære engelske ord... Jeg gør jo kun i 8. kl...

> Ja, det er dokumentationen til den funktion jeg har brugt i det håb at
> du måtte ønske at lære mere om funktionen.

Jo tak...

> Det står i manualen. Du fjerner det sidste element i ovenstående array
> og kan dermed udskrive resten af din referer uden sidehenvisning.

Sidste element...
Kan du ikke prøve at forklare det på en lettere måde?...
Jeg fatter ikke hvad du mener...

--
M.v.h. Morten Jørgensen
Bytte Program & Portal
www.StartLinket.dk



StartLinket.dk (05-02-2002)
Kommentar
Fra : StartLinket.dk


Dato : 05-02-02 22:42

Kunne jeg ikke lige så godt bare bruge?:

echo eregi_replace("/index.*.*", "",
"http://www.jubii.dk/modules/test/index.php");

Adressen dér skal jo selvfølgelig skiftes ud med $HTTP_REFERER.
Men dette giver: http://www.jubii.dk/modules/test
Så kan jeg bare lave en regel om at det skal være en index fil at siden
bruger...
For så virker det jo helt fint hvis jeg ikke kan lave noget dér så den
fjerner alt efter sidste "/"...
Kan jeg det?

--
M.v.h. Morten Jørgensen
Bytte Program & Portal
www.StartLinket.dk



Søg
Reklame
Statistik
Spørgsmål : 177560
Tips : 31968
Nyheder : 719565
Indlæg : 6408941
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste