Avatar billede sir_xxx Nybegynder
31. maj 2001 - 07:17 Der er 9 kommentarer og
2 løsninger

Sætte cookie

Hvordan sætter jeg en cookie, som husker hvad man har skrevet i et input felt??
<input type..........value=\"???\">
Avatar billede erikjacobsen Ekspert
31. maj 2001 - 07:22 #1
setCookie(\"cookienavn\",$feltnavn,time()+237663);  // mange sekunder ud i fremtiden

På efterfølgende sider er værdien kendt som $cookienavn
Avatar billede lauer Nybegynder
31. maj 2001 - 08:11 #2
Der skal altså efter Eriks cookie skrives

<input type..........value=\"<?=$cookienavn ?>\">
Avatar billede erikjacobsen Ekspert
31. maj 2001 - 08:22 #3
Nej, egentlig ikke. På samme side, som cookien bliver sat, er der ikke en
$cookienavn - det er der på efterfølgende sider. Det jeg sprang over var
at der på foregående side skulle være en form med

<input type=\"text\" name=\"feltnavn\">
Avatar billede alvion Nybegynder
31. maj 2001 - 08:24 #4
Lige for at sir_xxx ikke pludselig står med bukserne nede: På de efterfølgende sider *kan du ikke være sikker på*, at værdien er kendt som $cookienavn. Det kommer an på en bestemt indstilling i PHP nemlig \"register_globals\".

Alle cookies kan findes i array\'et $HTTP_COOKIE_VARS[\"cookienavn\"] - det kan de altid.

Hvis nu indstillingen \"register_globals\" er sat = \"on\", så kan du *også* bruge $cookienavn

Det er vigtigt at vide, hvis du ikke selv styrer din egen webserver. Det webhotel du har valgt KUNNE køre med \"register_globals = off\"

Det ville du f.eks. opleve hvis du havde webhotel hos mig... :-)
Avatar billede htx98i17 Professor
31. maj 2001 - 09:34 #5
alvion -> hvorfor sætte den til off ? (jeg spørger fordi jeg ik aner en shit om det) :))
Avatar billede sir_xxx Nybegynder
31. maj 2001 - 09:50 #6
Jeg lavede den her, for at se om det virkede:



<?
setCookie(\"cookienavn\",$feltnavn,time()+237663); 
if($id == 1){
    ?>

<form action=\"<? print(\"$PHP_SELF\"); ?>?id=2\" method=\"post\">
<input type=\"text\" name=\"feltnavn\" value=\"<?$cookienavn?>\"></form>
        <? } ?>
        <? if($id == 2){
        ?>
Hejsa du hedder: <?=$feltnavn?>
            <? } ?>


Og det gjorde det ikke...
Hva gør jeggalt???
Avatar billede sir_xxx Nybegynder
31. maj 2001 - 09:51 #7
DOH

Glemte lige en =
Avatar billede alvion Nybegynder
31. maj 2001 - 09:52 #8
Hastighedsoptimering.

Når register_globals er sat til on skal alle værdier i

$HTTP_GET_VARS, $HTTP_POST_VARS, $HTTP_SERVER_VARS, $HTTP_ENV_VARS, $HTTP_POST_FILES, $HTTP_COOKIE_VARS og $HTTP_SESSION_VARS

oprettes med særskilte variable. Det tager selvfølgelig noget tid for PHP-kernen ($HTTP_SERVER_VARS alene indeholder typisk 30-40 variable), og det skal ske hver eneste gang en side loades. Hvis du ikke bruger mere end et par af disse variable hver gang, er det jo spildtid.
Avatar billede gizmo-gizmo Nybegynder
31. maj 2001 - 09:53 #9

<?
if ($felt1) {
setCookie(\"felt\",$felt1); 
}

$kage = $HTTP_COOKIE_VARS[\"felt\"]

?>

<form action=\"<?=$PHP_SELF;?>\" method=\"post2>
<input type=\"text\" name=\"felt1\" value=\"<? echo $kage ?>\"><br>
<input type=\"submit\" name=\"sub\" value=\"bla\">
</form>
Avatar billede htx98i17 Professor
31. maj 2001 - 09:53 #10
du skal også skrive <?php =$cookienavn ?> i value...
Avatar billede htx98i17 Professor
31. maj 2001 - 09:54 #11
alvion-> OK, I see...
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