Toon posts:

[php] setcookie() expects parameter 3 to be long

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hoi,

In veel scripts die ik de afgelopen maanden heb gemaakt, gebruikte ik de volgende syntax om een cookie te plaatsen:

PHP:
1
setCookie("tekst",$tekst,"/");


Dat werkte altijd prima.
"/" diende ervoor dat de cookie werd verwijderd zodra de browser werd gesloten (browser sessie werd beeindigd)

Sinds de serverupgrade (door de hostingprovider) krijg ik de volgende melding:

setcookie() expects parameter 3 to be long

Waarom werkt "/" niet meer?!
Ik begrijp dat het een integer hoort te zijn met daarin het tijdstip dat de cookie mag bestaan. Maar "/" was ook altijd mogelijk.

  • Nielsz
  • Registratie: Maart 2001
  • Niet online
Tja, in de manual staat:
boolean setcookie ( string name [, string value [, int expire [, string path [, string domain [, int secure]]]]])

Wat het wel zou kunnen zijn, is dat hij ziet dat het een string is met een / erin, en daardoor denkt hij dat het de path is. En dan is er geen expire meegegeven, wat hetzelfde doet als jij denkt dat een / doet.

Verwijderd

Topicstarter
zover was ik ook al, maar het stomme is dat het eerst perfect werkte!
Het lijkt nu ook nog wel te werken, dus ik los het maar op door er een @ voor te zetten :(

  • Basszje
  • Registratie: Augustus 2000
  • Laatst online: 12:24

Basszje

Reisvaap!]

Het is iig foute code, set de tijd dat helemaal niet, heb je hetzelfde effect.

Beware of listening to the imposter; you are undone if you once forget that the fruits of the earth belong to us all, and the earth itself to nobody.


Verwijderd

Topicstarter
het WAS geen foute code, want heeft zo in de handleiding van PHP gestaan ooit.
Anders had ik het zelf echt niet verzonnen hoor :)

  • Basszje
  • Registratie: Augustus 2000
  • Laatst online: 12:24

Basszje

Reisvaap!]

Verwijderd schreef op 09 oktober 2002 @ 13:36:
het WAS geen foute code, want heeft zo in de handleiding van PHP gestaan ooit.
Anders had ik het zelf echt niet verzonnen hoor :)
Wel versie van PHP was het en is het nu geworden dan :?
Misschien is die functie aanroep idd gewoon veranderd, iets wat helaas niet zelden voorkomt tussen verschillende PHP versies *handig :{ *

Beware of listening to the imposter; you are undone if you once forget that the fruits of the earth belong to us all, and the earth itself to nobody.


Verwijderd

Als je de tijd niet instelt dan wordt cookie verwijderd als je browser sluit
Dus:
code:
1
2
3
<?
setCookie("tekst",$tekst);
?>


Ik stel voor dat je met een advanced textpad gewoon al je files batcht en ,"/"); replacet met ,);
?>

  • Basszje
  • Registratie: Augustus 2000
  • Laatst online: 12:24

Basszje

Reisvaap!]

Probleem alleen van bovenstaande code is dat zonder de "/" tag als path parameter de cookie alleen in de huidige directory (?) te benaderen is :)

Beware of listening to the imposter; you are undone if you once forget that the fruits of the earth belong to us all, and the earth itself to nobody.


Verwijderd

Dan gooi je er toch een replace overheen, zoals jRown zegt..
Alleen dan zet je er ook een tijd tussen (of null, als je wilt)

...Waarom wil je de nieuwe functie-definitie niet opvolgen eigenlijk?

Verwijderd

Topicstarter
Omdat de cookie niet was gebonden aan tijd, maar zou worden verwijderd zodra de browsersessie was afgelopen in de oude situatie.

  • Basszje
  • Registratie: Augustus 2000
  • Laatst online: 12:24

Basszje

Reisvaap!]

Verwijderd schreef op 14 oktober 2002 @ 10:22:
Omdat de cookie niet was gebonden aan tijd, maar zou worden verwijderd zodra de browsersessie was afgelopen in de oude situatie.
Dan kan je toch gewoon de tijdswaarde niet invullen :?

Beware of listening to the imposter; you are undone if you once forget that the fruits of the earth belong to us all, and the earth itself to nobody.


  • brammetje
  • Registratie: Oktober 2000
  • Laatst online: 12-01-2025
Dit is echt geen nieuwe signature hoor, dit is al sinds ik hem ken...Ik denk dat ze in php toch iets meer om types willen gaan zeuren. Zet er gewoon de tijd bij, dan ben je er vanaf.
Pagina: 1