|
| $_POST i en cookie Fra : Michael Christoffers~ |
Dato : 17-06-06 18:37 |
|
Hej
Jeg har brug for at kunne ligge alle variabler fra $_post i en cookie.
Nogen der har et godt script til det ?
Mvh
Michael
| |
Ulrik Nielsen (17-06-2006)
| Kommentar Fra : Ulrik Nielsen |
Dato : 17-06-06 19:23 |
|
Michael Christoffersen wrote:
> Hej
>
> Jeg har brug for at kunne ligge alle variabler fra $_post i en cookie.
>
> Nogen der har et godt script til det ?
udover at det er en dårlig ide, så:
foreach ($_POST as $key => $val) {
$_COOKIE[$key] = $val;
}
--
ulrik nielsen |
-----------------+---------------------------------------------------
quote or the day | secretary plugged hairdryer into UPS
from bofh | http://www.cs.wisc.edu/~ballard/bofh/
| |
Michael Christoffers~ (17-06-2006)
| Kommentar Fra : Michael Christoffers~ |
Dato : 17-06-06 20:59 |
|
Tak
Er der en bedre måde at "gemme" indtastede oplysninger i en formular til
næste gang brugeren besøger siden, uden at skulle bruge login og database?
Der er over 200 felter/variabler der skal kunne huskes.
Michael
Ulrik Nielsen wrote:
> Michael Christoffersen wrote:
>> Hej
>>
>> Jeg har brug for at kunne ligge alle variabler fra $_post i en cookie.
>>
>> Nogen der har et godt script til det ?
>
> udover at det er en dårlig ide, så:
>
> foreach ($_POST as $key => $val) {
> $_COOKIE[$key] = $val;
> }
>
| |
Ulrik Nielsen (18-06-2006)
| Kommentar Fra : Ulrik Nielsen |
Dato : 18-06-06 07:06 |
|
Michael Christoffersen wrote:
> Tak
>
> Er der en bedre måde at "gemme" indtastede oplysninger i en formular til
> næste gang brugeren besøger siden, uden at skulle bruge login og database?
> Der er over 200 felter/variabler der skal kunne huskes.
>
nu siger du "ingen database", det var ellers det mest oplagte bud.
- ellers kunne du lave din "egen database" med en fil gemt på serveren
med et md5'et filnavn, som du så gemmer i en cookie.
mvh
--
ulrik nielsen |
-----------------+---------------------------------------------------
quote or the day | secretary plugged hairdryer into UPS
from bofh | http://www.cs.wisc.edu/~ballard/bofh/
| |
Thomas Lindgaard (19-06-2006)
| Kommentar Fra : Thomas Lindgaard |
Dato : 19-06-06 11:14 |
|
Ulrik Nielsen wrote:
> nu siger du "ingen database", det var ellers det mest oplagte bud.
> - ellers kunne du lave din "egen database" med en fil gemt på serveren
> med et md5'et filnavn, som du så gemmer i en cookie.
Hvad med at benytte sessions?
Gem info i session:
<?php
session_start();
$_SESSION['post_variable'] = $_POST;
?>
og hent info igen:
<?php
session_start();
$post_variable = $_SESSION['post_variable'];
?>
Session-data gemmes i en fil på serveren, og der sendes et session-id
med i en cookie.
--
Mvh.
/Thomas
| |
Ulrik Nielsen (19-06-2006)
| Kommentar Fra : Ulrik Nielsen |
Dato : 19-06-06 12:21 |
|
Thomas Lindgaard wrote:
> Ulrik Nielsen wrote:
>> nu siger du "ingen database", det var ellers det mest oplagte bud.
>> - ellers kunne du lave din "egen database" med en fil gemt på serveren
>> med et md5'et filnavn, som du så gemmer i en cookie.
>
> Hvad med at benytte sessions?
>
> Session-data gemmes i en fil på serveren, og der sendes et session-id
> med i en cookie.
det er rigtigt, men hvis dataene skal gemmes mellem brugersessioner skal
han i hvert fald huske at sætte timeouten op på sessionen :)
mvh
--
ulrik nielsen |
-----------------+---------------------------------------------------
quote or the day | loop found in loop in redundant loopback
from bofh | http://www.cs.wisc.edu/~ballard/bofh/
| |
Michael Christoffers~ (19-06-2006)
| Kommentar Fra : Michael Christoffers~ |
Dato : 19-06-06 15:56 |
|
Thomas Lindgaard wrote:
> Ulrik Nielsen wrote:
>> nu siger du "ingen database", det var ellers det mest oplagte bud.
>> - ellers kunne du lave din "egen database" med en fil gemt på serveren
>> med et md5'et filnavn, som du så gemmer i en cookie.
>
> Hvad med at benytte sessions?
>
> Gem info i session:
>
> <?php
> session_start();
> $_SESSION['post_variable'] = $_POST;
> ?>
>
> og hent info igen:
>
> <?php
> session_start();
> $post_variable = $_SESSION['post_variable'];
> ?>
>
> Session-data gemmes i en fil på serveren, og der sendes et session-id
> med i en cookie.
>
Er ikke helt med.
"$post_variable" indeholder alle variabler fra $_post. Skal jeg så
efterfølgende smider $post_varable i en cookie med setcookie()?
Ellers forsvinder alle oplysningerne når browseren bliver lukket.
| |
Thomas Lindgaard (21-06-2006)
| Kommentar Fra : Thomas Lindgaard |
Dato : 21-06-06 08:55 |
|
Michael Christoffersen wrote:
> Er ikke helt med.
>
> "$post_variable" indeholder alle variabler fra $_post. Skal jeg så
> efterfølgende smider $post_varable i en cookie med setcookie()?
> Ellers forsvinder alle oplysningerne når browseren bliver lukket.
Nej, det er ikke helt sådan det fungerer.
Session-data gemmes i filer på serveren. Når man starter en session
(dvs. kalder session_start()), så sker der en af to ting:
1) Såfremt der _ikke_ ligger en cookie på klienten med et session_id,
så oprettes der en fil til den nye session, og der smides en cookie
med det tilhørende id.
2) Hvis der findes en cookie med et session-id, så hentes session-data
fra filen og lægges i $_SESSION.
Den måde man bruger sessions på, er som jeg beskrev i mit første indlæg:
Man kalder session_start() øverst på siden (skal så vidt jeg husker
kaldes _inden_ der bliver sendt output til klienten - der skal jo evt.
sættes en cookie mv.). Når session_start() er kaldt, har man automagisk
et array $_SESSION, som man kan misbruge på det groveste, og alt man
gemmer i det, bliver igen automagisk tilgængeligt på næste side, hvor
man (gen-)starter session'en.
Side1.php:
<?php
session_start();
$_SESSION['splof'] = 'Feta er en ost, som man _ikke_ bør spise';
?>
Side2.php:
<?php
session_start();
print $_SESSION['splof'];
?>
Håber det hjælper på forståelsen.
--
Mvh.
/Thomas
| |
|
|