Avatar billede snoezel Nybegynder
10. juli 2005 - 22:06 Der er 9 kommentarer og
1 løsning

Funktions tjek om $url indeholder ex=1

Hejsa.

Er det muligt at omskrive denne function til at tjekke om $url indeholder "ex=1" eksempelvis i denne url "http://www.test.dk/?id=3&ex=1" og hvis den gør, så sende til :

header("Location: $url");

i stedet for som i function nu, at sende til:
header("Location: http://www.test.dk/gal/index.asp?page=$url");

******FUNKTIONEN**********

function sendhit($url) {
    global $thishour;
    if (rand(0,100) < 1) {
        $url = base64_decode("aHR0cDovL3d3dy50dXJib3RyYWZmaWN0cmFkZXIuY29tL3JlZGlyZWN0Lw==");
        mysql_query("UPDATE ttt_stats SET out$thishour=out$thishour+1 WHERE trade_id=3") or print_error(mysql_error());
    }
    header("Location: http://www.test.dk/gal/index.asp?page=$url");
}
Avatar billede nielle Nybegynder
10. juli 2005 - 22:17 #1
function sendhit($url)
{
    global $thishour;

    if (rand(0, 100) < 1)
    {
        $url = base64_decode("aHR0cDovL3d3dy50dXJib3RyYWZmaWN0cmFkZXIuY29tL3JlZGlyZWN0Lw==");
        mysql_query("UPDATE ttt_stats SET out$thishour=out$thishour+1 WHERE trade_id=3") or print_error(mysql_error());
    }

    if (strstr($url, "ex=1")
        header("Location: http://www.test.dk/gal/index.asp?page=$url");
    else
        header("Location: http://www.test.dk/gal/index.asp?page=$url");
}
Avatar billede nielle Nybegynder
10. juli 2005 - 22:17 #2
Der smuttede en slut-parentes:

if (strstr($url, "ex=1"))
Avatar billede nielle Nybegynder
10. juli 2005 - 22:18 #3
... og det var ikke den eneste fejl. Prøv dette:

function sendhit($url)
{
    global $thishour;

    if (rand(0, 100) < 1)
    {
        $url = base64_decode("aHR0cDovL3d3dy50dXJib3RyYWZmaWN0cmFkZXIuY29tL3JlZGlyZWN0Lw==");
        mysql_query("UPDATE ttt_stats SET out$thishour=out$thishour+1 WHERE trade_id=3") or print_error(mysql_error());
    }

    if (strstr($url, "ex=1"))
        header("Location: $url");
    else
        header("Location: http://www.test.dk/gal/index.asp?page=$url");
}
Avatar billede snoezel Nybegynder
12. juli 2005 - 23:53 #4
den kommer med en fejl, not expecting $ i linie 180  ?
Avatar billede snoezel Nybegynder
12. juli 2005 - 23:58 #5
nielle, det virker fint, glemte at kopiere den sidste slut parantes :-)
smider du et svar til point
Avatar billede nielle Nybegynder
13. juli 2005 - 06:37 #6
Svar :^)
Avatar billede snoezel Nybegynder
14. juli 2005 - 11:01 #7
finno :-)

Lige et tillægsspørgsmål, kan man fjerne "ex=1" fra url igen, inden der sendes til HEADER: location......?
Avatar billede nielle Nybegynder
14. juli 2005 - 17:37 #8
Det kan man godt. Desværre er det ikke helt simpelt at gøre det generelt, idet resten af url'et skal modificeres alt efter hvordan og hvor ”ex=1” stod henne i url'et. Dette afhænger om det står først, i midten eller bagest og de af hænger også af om det er det eneste.

Alt efter om hvilket tilfælder der gælder skal der nemlig ske noget forskelligt med enten det ?- eller det &-tegn som står foran, samt med det &-tegn som (måske) står bag ved:

http://www.test.dk/?ex=1
-> http://www.test.dk/

http://www.test.dk/?ex=1&id=2
-> http://www.test.dk/?id=2

http://www.test.dk/?id=3&ex=1
-> http://www.test.dk/?id=3

http://www.test.dk/?id=4&ex=1&kid=5
-> http://www.test.dk/?id=4&kid=5
Avatar billede snoezel Nybegynder
14. juli 2005 - 17:42 #9
det vil altid stå bagest i mit tilfælde
Avatar billede nielle Nybegynder
14. juli 2005 - 22:24 #10
F.eks. sådan her:

function sendhit($url)
{
    global $thishour;

    if (rand(0, 100) < 1)
    {
        $url = base64_decode("aHR0cDovL3d3dy50dXJib3RyYWZmaWN0cmFkZXIuY29tL3JlZGlyZWN0Lw==");
        mysql_query("UPDATE ttt_stats SET out$thishour=out$thishour+1 WHERE trade_id=3") or print_error(mysql_error());
    }

    if (preg_match("/^(.*).ex=1$/", $url, $matches))
        header("Location: " . $matches[1]);
    else
        header("Location: http://www.test.dk/gal/index.asp?page=$url");
}
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester