php bir çerez ayarı

3 Cevap php

Ben bir hata alıyorum ile bu gibi whas yanlış bir tanımlama, ayarlamak çalışıyorum.

Uyarı: setcookie () parametre 3 uzun olmasını beklediğini, verilen dize / home / admin / domains / domain.com.au / public_html / setcookie.php hattı 6

<?php
$cookie_name = "test_cookie";
$cookie_value = "test_string";
$cookie_expire = "time()+86400";
$cookie_domain = "localhost";
setcookie($cookie_name, $cookis_value, $cookie_expire, "/", $cookie_domain, 0);
?>
<HTM>
<HEAD>
</HEAD>
<BODY>
<h1>cookie mmmmmmm</h1>
</BODY>
</HTML>

3 Cevap

Bir dize time()+86400 değerini geçiyoruz. Eğer tırnak ile kapalı çünkü budur.

Muhtemelen ne yapmak istedim:

$cookie_expire = time()+86400;

Bu değer yerine bir dize bir sayı olarak değerlendirilir neden olacaktır.

Yukarıda verilen oldum ipuçları de haklısın; aslında setcookie işlevi bu şekilde bir dize geçmek için çalışıyorlardı.

Sadece "S bırakın ve iyi yapmalıdır.

Benzer durumlarda almak için yine size olur arada, (veri ve tipi) bir değişkenin içerdiği ne söyleyebilirim ki, (bu konuda ... ya da bir hata ayıklayıcı) var_dump PHP işlevini kullanmayı deneyin. Sonra tam sorunun ne olduğunu saptayabilir ve hızlı bir şekilde bunu düzeltmek amacıyla, bunun kaynağına geriye gidebilirsiniz ...

$cookie_expire = time()+86400;

Değişken türleri üzerinde PHP kılavuzuna bakın:

http://us3.php.net/manual/en/language.types.intro.php