Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów
Problem z Ciasteczkami (Cookies) w PHP.:( - Wersja do druku

+- Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów (https://www.webmastertalk.pl)
+-- Dział: Technologie internetowe - tworzenie stron WWW (https://www.webmastertalk.pl/forum-technologie-internetowe-tworzenie-stron-www)
+--- Dział: Programowanie, Bazy danych (https://www.webmastertalk.pl/forum-programowanie-bazy-danych)
+--- Wątek: Problem z Ciasteczkami (Cookies) w PHP.:( (/thread-problem-z-ciasteczkami-cookies-w-php)

Strony: 1 2


Problem z Ciasteczkami (Cookies) w PHP.:( - AveCXV - 20-05-2009

Witam. Mam Problem z Ciasteczkami w PHP v. 4.3.11 .

Mam prosty skrypt.. który ma zapamiętywać jakiś wyraz.
No i jak się łatwo domyśleć nie działają mi. Sad (w Teorii.)

Kod PHP:
<?php
     setcookie
("nazwa","zawartosć",time() + 86400);

if (
$_POST[imie] == TRUE) {
setcookie("imie",$_POST[imie]);
echo 
"Zostałeś zapamiętany,
<A HREF=\"ciasteczko_proba.php\">kliknij tutaj</A>"
;
}
else if (
$_COOKIE[imie] == TRUE) {
echo 
"Witaj <B>$_COOKIE[imie]"; }
else { echo 
"
<FORM ACTION=\"ciasteczko_proba.php\" METHOD=\"post\">
Podaj swoje imię: <INPUT TYPE=\"text\" NAME=\"imie\"><br />
<INPUT TYPE=\"submit\" VALUE=\"Zapamiętaj mnie\">
</FORM>"
; } ?>

Wyskakują mi błędy typu:
Notice: Use of undefined constant imie - assumed 'imie' in J:\xitami-25\webpages\new_solution\news\ciasteczko_proba.php on line 4

Notice: Undefined index: imie in J:\xitami-25\webpages\new_solution\news\ciasteczko_proba.php on line 4

Notice: Use of undefined constant imie - assumed 'imie' in J:\xitami-25\webpages\new_solution\news\ciasteczko_proba.php on line 14

Notice: Undefined index: imie in J:\xitami-25\webpages\new_solution\news\ciasteczko_proba.php on line 14


Żeby było zabawniej . odpaliłem drugi system gdzie mam zainstalowanego innego parsera php. A dokładniej krasnala z php 4.3.9 i tam ten sam skrypt działa po prawnie. Co gorsza. Info php . jest identyczne. Za wyjątkiem „PHP Variables” bo tego tam nie wyświetla.

W jednym systemie ciasteczka mi działają A drugim nie Czy wie Ktoś czemu tak jest.
Bo ja już wymiękam. Po prostu zabrakło mi pomysłów . Jak To naprawić (Zrobić żeby działało.)


w PHP 4.3.11 mam tak.:
Directive Local Value Master Value

session.cookie_domain no value no value
session.cookie_lifetime 0 0
session.cookie_path / /
session.cookie_secure Off Off

session.use_cookies On On
session.use_only_cookies Off Off


W tym info – php są takie dane których nie było w popdzenim. Wiec nie miałem możliwości ich porównać.
HTTP_COOKIE pma_collation_connection=utf8_general_ci; pma_charset=iso-8859-1; pma_lang=pl-utf-8; pma_theme=original

A

W PHP Variables mam tak.

_COOKIE["pma_collation_connection"] utf8_general_ci
_COOKIE["pma_charset"] iso-8859-1
_COOKIE["pma_lang"] pl-utf-8
_COOKIE["pma_theme"] original


_SERVER["HTTP_COOKIE"] pma_collation_connection=utf8_general_ci; pma_charset=iso-8859-1; pma_lang=pl-utf-8; pma_theme=original

_ENV["HTTP_COOKIE"] pma_collation_connection=utf8_general_ci; pma_charset=iso-8859-1; pma_lang=pl-utf-8; pma_theme=original


Proszę, HELP ME i .Sad(( Bo od kilku dni się z tym męczę. Jak KTOS coś wie to niech napisze. Co i jak może być. W miarę opisowo . Bo już nie ma sił się domyślać.


RE: Problem z Ciasteczkami (Cookies) w PHP.:( - Labsta.com - 20-05-2009

Spróbowałbym $_POST['imie'] i $_COOKIE['imie']. Tak na oko.


RE: Problem z Ciasteczkami (Cookies) w PHP.:( - AveCXV - 27-05-2009

Na Samym wstępie chciałem podziękować za pomoc. Smile
Już umiem utworzyć ciasteczko. i odczytać z niego zmienną.

Ale mam jeden malutki jeszcze problemie. Wydawało mi się ze to są zmienne.
A ja chciałem Po utworzeniu ciasteczka. Z jakaś wartością móc modyfikować
Zawartości tej zmiennej. (w ciasteczku ) Bez konieczności Tworzenia Nowego ciasteczka. Czy też ponownego nad pisywania całego ciasteczka. Bo to by chyba oznaczało ze „setcookies” znowu musi być na początku to deklarować. Sad


Nie wiem czy dobrze wytłumaczyłem o co mi biega.
Chodzi mi o to ze jak mam już ciasteczko z jakaś wartością. To chciał bym módź ją modyfikować. Na bieżąco.


Czy da się to zrobić jak ta to jak? Po prosił bym o jakis przykład. Zapisywania nowej wartości zmiennej w już istniejącym ciasteczku.

Ja potraficie to pomóżcie mi.


RE: Problem z Ciasteczkami (Cookies) w PHP.:( - DoGeR - 27-05-2009

Nie trzeba setcookies na początku deklarować jeżeli w php.ini ustawisz output_buffering = On Smile


RE: Problem z Ciasteczkami (Cookies) w PHP.:( - BlueMan - 07-07-2009

Podepnę się pod ten temat... .

Kod PHP:
if ( isset($_GET['typ']) && in_array($_GET['typ'],$hash_type) ) {
    
setcookie('check-hash-type',$system->clearString($_GET['typ']));
echo 
'zapisalem ciacho';
}
echo 
$_COOKIE['check-hash-type']; 

I dopiero po ponownym odświeżeniu strony (nie koniecznie z przesyłanie $_GET[typ] ciasteczko da się odczytać...

Co jest nie tak?


RE: Problem z Ciasteczkami (Cookies) w PHP.:( - Labsta.com - 07-07-2009

Wcale nie masz błędu, tak działają ciacha, wiąże się to z wysyłaniem ich w nagłówkach przed html. Dlatego trzeba odświeżyć.


RE: Problem z Ciasteczkami (Cookies) w PHP.:( - BlueMan - 07-07-2009

Ale jak przez JS odczytuję ciacho to odczytuje mi od razu normalnie - bez odświeżenia strony... .

Da się więc z poziomu PHP bez odświeżenie odczytać ciacho?


RE: Problem z Ciasteczkami (Cookies) w PHP.:( - KowR - 07-07-2009

Nie... Tylko poprzez AJAX i przesłanie do PHP dopiero...


RE: Problem z Ciasteczkami (Cookies) w PHP.:( - Labsta.com - 07-07-2009

Wydaje mi się, że może być pewien trik, ale ręki sobie nie dam odciąć.
Chodzi o bufory, bo skoro można tylko tym sposobem wysyłać ciacha w środku dokumentu to i może można odczytać.
Jednak nigdy tego nie testowałem, Prościej chyba bezie js, jeśli to z buforami wogóle by zadziałało.

P.S. na dowód cytat z manuala PHP:
Cytat:Częste pułapki:
Ciasteczka nie będą widziane do następnego przeładowania strony dla której mają być widoczne.



RE: Problem z Ciasteczkami (Cookies) w PHP.:( - BlueMan - 08-07-2009

O jakie bufory ci chodzi?

(07-07-2009, 21:23)Labsta.com napisał(a): Wcale nie masz błędu, tak działają ciacha, wiąże się to z wysyłaniem ich w nagłówkach przed html. Dlatego trzeba odświeżyć.
To jest dla mnie logiczne i zrozumiałe. Zero uwag nie mam do tego, bo jest to logiczne :]
Dziwi mnie tylko to, że w jednej linijce tworzę ciasteczko, a w linijce poniżej nie mogę go odczytać... . To jest dla mnie bez sensu zrobione Tongue

Odczytywanie w JS oczywiście nie spełnia moich potrzeb... musiałem to obejść poprzez:
Kod PHP:
if ( isset($_GET['typ']) && in_array($_GET['typ'],$hash_type) ) {
    
$inCookie $system->clearString($_GET['typ']);
    
setcookie('check-hash-type',$inCookie);
}
else {
    
$inCookie $_COOKIE['check-hash-type'];

I teraz będę korzystać z $inCookie jak coś będę chciał z tego krakersa Wink