[PHP]Vraag

Pagina: 1
Acties:
  • 48 views sinds 30-01-2008

  • Brantje
  • Registratie: Juli 2004
  • Laatst online: 18-05 09:49

Brantje

De post is daar >>

Topicstarter
Hey,
Ik heb mijn site vertaald naar het engels.
Nu wil ik 2 link hebben.

Namelijk.

[Dutch] [English]


Als je er op klikt word er een cookie gemaakt met je keuze.

De NL versie staat in de map NL.
En engels (je raad het denk ik al) ENG

Hoe kan ik dit doen?

Groeten Brantje

  • P_de_B
  • Registratie: Juli 2003
  • Niet online
Ik denk dat je je een beetje meer moet verdiepen in PHP. Wat je nu wilt komt eigenlijk neer op een scriptrequest, en dat is niet toegestaan. (zie: Welkom in P&W: FAQ en Beleid *updated: 19 nov* )

Op www.php.net staat uitgebreide informatie. Probeer zelf eens wat te vinden, en als je tegen een specifiek probleem aanloopt ben je natuurlijk welkom :)

Oops! Google Chrome could not find www.rijks%20museum.nl


  • Brantje
  • Registratie: Juli 2004
  • Laatst online: 18-05 09:49

Brantje

De post is daar >>

Topicstarter
Ik heb lopen scripten heb dit nu.

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
       <?php if (isset($_POST['form'])) {
  if ($_POST['optie'] == "nl") {
    setcookie(voor_nl);
  }
  elseif ($_POST['optie'] == "eng") {
   setcookie(voor_eng);
  }
  else {
    die("Niet met de source ofzo spelen!");
  }
}
else {

print <<<ENDHTML
<select name="form"><option value="Dutch">Dutch</option><option value="English">English</option>
ENDHTML;

}
?>


Maar wat hij niet doet is als je op de taal klikt dat je niet naar de taal gaat
:S
hoe kan ik dat doen?

[ Voor 18% gewijzigd door Brantje op 26-12-2004 16:30 ]


  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

Brantje schreef op zondag 26 december 2004 @ 16:12:
PHP:
1
2
3
4
5
6
7
       <?php if (isset($_POST['form'])) {
  if ($_POST['optie'] == "nl") {
    setcookie(voor_nl);
  }
  elseif ($_POST['optie'] == "eng") {
   setcookie(voor_eng);
  }


Maar wat hij niet doet is als je op de taal klikt dat je niet naar de taal gaat
:S
hoe kan ik dat doen?
wellicht tijd om nogmaals in de manual te duiken :?
http://php.net/setcookie om eens mee te beginnen 8)7

  • P_de_B
  • Registratie: Juli 2003
  • Niet online
Het eerste wat ik zie is dat je controleert op 'nl' en 'eng' maar dat je in de <SELECT> Dutch en English hebt staan.

Oops! Google Chrome could not find www.rijks%20museum.nl


  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

P_de_B schreef op zondag 26 december 2004 @ 16:16:
Het eerste wat ik zie is dat je controleert op 'nl' en 'eng' maar dat je in de <SELECT> Dutch en English hebt staan.
en er mist een <form>-tag en er wordt verwacht dat die select de name 'optie' ipv 'form' heeft etc etc

[ Voor 11% gewijzigd door Erkens op 26-12-2004 16:18 ]


  • Brantje
  • Registratie: Juli 2004
  • Laatst online: 18-05 09:49

Brantje

De post is daar >>

Topicstarter
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<?

if (!isset($_COOKIE['lang'])) {
    if (isset($_POST['form'])) {
        if ($_POST['lang'] == "en") {
            setcookie("lang",$_POST['lang'],time()+3600);
            header("Location: http://criminals.basehosting.nl/ENG");
        }
        elseif ($_POST['lang'] == "nl") {
            setcookie("lang",$_POST['lang'],time()+3600);
            header("Location: http://criminals.basehosting.nl/NL");
        }
        else {
            die("Hacking attempt!");
        }
    }
    else {

?>
        <form method="post" action="">
          <input type="image" src="vlag_nl.gif" value="nl" name="lang">
          <input type="image" src="vlag_en.gif" value="en" name="lang2">
          <input type="submit" name="form">
        </form>
        <?

    }
}
else {
    if ($_COOKIE['lang'] == "nl") {
        $lang = "nl";
    }
    elseif ($_COOKIE['lang'] == "en") {
        $lang = "en";
    }
    else {
        die("Je mag niet met koekjes spelen! - You cannot play with cookies!");
    }
}

?>


gefixt maar als ik nu op het vlaggetje klik
en op submit dan gebeurt er niets :S
hoe komt dat?
edit:

ff een linkje gefixt

[ Voor 23% gewijzigd door Brantje op 26-12-2004 16:47 ]


  • P_de_B
  • Registratie: Juli 2003
  • Niet online
Je moet echt eerst de basics maar eens doornemen. Je HTML klopt al niet eens.

Oops! Google Chrome could not find www.rijks%20museum.nl


  • Brantje
  • Registratie: Juli 2004
  • Laatst online: 18-05 09:49

Brantje

De post is daar >>

Topicstarter
Waarom gebeurt er niets?

  • P_de_B
  • Registratie: Juli 2003
  • Niet online
Omdat je code totaal niet klopt. Op deze manier gaat het niet werken, je zult eerst een aantal basis dingen door moeten nemen

Oops! Google Chrome could not find www.rijks%20museum.nl


  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

soms heb je voor het submitten een action nodig die jij doelbewust :? leeg laat ;)
begin eens met de basics te leren voordat je je bezig wilt houden met het bouwen van applicaties.

  • Michali
  • Registratie: Juli 2002
  • Laatst online: 22-03 18:12
Je moet even snappen wat een image en submit inputs doen. Deze versturen beide het formulier en aan de hand van de naam die jij ze geeft kun je zien welke is gebruikt. Als iemand de nederlandse taal kiest, dan zal $_POST['lang'] bestaan, maar lang2 en form niet. Een van de drie wordt dus maar meegestuurd.

Noushka's Magnificent Dream | Unity


Verwijderd

*zucht*

Ga eerst in ieder geval HTML leren, dan PHP, en dan kun je proberen een webapplicatie te maken ;)

HTML:
1
2
<a href="set_lang.php?lang=nl">[img]"vlag_nl.gif"[/img]</a> 
<a href="set_lang.php?lang=en">[img]"vlag_en.gif"[/img]</a>


set_lang.php:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
switch ($_GET["lang"]) {
  case "en":
    setcookie("lang","en",time()+3600);
    header("Location: http://criminals.basehosting.nl/ENG");
    break;
  case "nl":
    setcookie("lang",$_POST['lang'],time()+3600);
    header("Location: http://criminals.basehosting.nl/NL");
    break;
  }
  default:
    echo ("deze taal bestaat niet");
  }
}


Verder snap ik niet echt wat je met die cookies wil, als je toch naar een "taal-map" redirect. Daarvoor klopte het volgens mij wel wat je al had. Die $_COOKIE-dingen klopten verder wel :)

Verder zou ik je aanraden de topictitel de volgende keer wat duidelijker te maken, en de quickstart eens door te lezen.

[ Voor 31% gewijzigd door Verwijderd op 26-12-2004 19:23 ]


  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

Verwijderd schreef op zondag 26 december 2004 @ 19:18:
Verder snap ik niet echt wat je met die cookies wil, als je toch naar een "taal-map" redirect. Daarvoor klopte het volgens mij wel wat je al had.
wellicht om voortaan automagisch die taal te nemen, althans dat doe ik altijd in zo'n geval. (ook is het handig om een default taal te hebben voor als er een niet bestaande is gekozen ipv een foutmelding ;) )

Verwijderd

Erkens schreef op zondag 26 december 2004 @ 19:20:
[...]

wellicht om voortaan automagisch die taal te nemen, althans dat doe ik altijd in zo'n geval. (ook is het handig om een default taal te hebben voor als er een niet bestaande is gekozen ipv een foutmelding ;) )
Sorry, dom 8)7 ik zat te denken aan een session 8)7

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 13:45

gorgi_19

Kruimeltjes zijn weer op :9

En dicht :) Je titel is compleet nietszeggend over je feitelijke probleem. Verder mis ik ook een stukje zelfwerkzaamheid in combinatie met debuggen. Het lijkt te veel op "aan het handje meenemen"; waar Programming & Webscripting niet voor bedoeld is :) Ik kan me alleen maar aansluiten bij de posters om je meer in de basics van PHP, HTML en debuggen te verdiepen :)

Digitaal onderwijsmateriaal, leermateriaal voor hbo

Pagina: 1

Dit topic is gesloten.