Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Strona zależna od cookies
-Gość_Harry-
post 3.02.2006, 19:18:43
Post #1





Goście







Witam.
Jestem początkujący w php i mam pewien problem.
Chcę zrobić coś takiego:
1. Użytkownik wchodzi pierwszy raz na stronę - pojawia mu się "witaj.php"
2. Przy każdym kolejnym wejściu przenosi użytkownika od razu do "main.php".

Znalazłem taki kod, ale to nie działa
  1. <?
  2. setcookie("cookie_name", "vistedmain", time() + 3600);
  3.  
  4. $cookieinfo = $HTTP_COOKIE_VARS["cookie_name"];
  5.  
  6. if ($cookieinfo == "$cookieinfo") {
  7.     include('main.php');
  8.     exit;
  9.  
  10. } else {
  11.     include('witaj.php');
  12.     exit;
  13. }
  14.  
  15. ?>
blink.gif


Proszę o pomoc i z góry dziękuję
---[ edit ]-------
poprawilem bbCode -- prosze uzywac odpowiedniego
-- dr_bonzo
Go to the top of the page
+Quote Post
dr_bonzo
post 3.02.2006, 19:23:07
Post #2





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

Ostrzeżenie: (0%)
-----


Jaka masz wersje php: (x.y.z)?

Sproboj zamiast:
  1. <?php
  2. $cookieinfo = $HTTP_COOKIE_VARS["cookie_name"];
  3. ?>

tego
  1. <?php
  2. $cookieinfo = $_COOKIE["cookie_name"];
  3. ?>


tu masz to opisane dokladniej: http://pl.php.net/setcookie


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
-Gość_Harry-
post 3.02.2006, 20:42:13
Post #3





Goście







niestety to nie działa.

już próbowałem wszystkiego co znalazłem na necie.

dzięki za pomoc.

jeżeli ktoś ma inne pomysły proszę o pomoc
Go to the top of the page
+Quote Post
mike
post 3.02.2006, 20:51:17
Post #4





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

Ostrzeżenie: (0%)
-----


Masz źle zaporojektowane to:
1. Za każdym razem ustawiasz ciacho, a to niepotrzebne, bo powinieneś je ustawić tylko jeśli go nie ma. Tym bardziej że jeśli byś poczytał więcej w miejscu gdzie wskazał Ci ~dr_bonzo to być wiedział, że
Cytat
  • Ciasteczka nie będą widziane do następnego przeładowania strony dla której mają być widoczne.

2. Powinno być tak:
Kod
1. Jest Ciacho?
    1.2. Nie.
        1.2.1. Ustawiasz ciacho
        1.2.2. Pokazujesz stronę witaj.php
    1.1. Tak. Przenosisz na main.php

A nie działało, jak już wyżej napisałem, bo sprawdzasz wartość ciacha w tym samym wywołaniu w którym je ustawiłeś. A ciach wtedy jeszcze nie widać.

Poza tym, co to?:
  1. <?php
  2. //...
  3. if ($cookieinfo == "$cookieinfo") {
  4. //...
  5. ?>

Warunek zawsze spełniony, powinno być:
  1. <?php
  2. //...
  3. if ($cookieinfo == 'vistedmain') {
  4. //...
  5. ?>


Poza tym porada ~dr_bonzo o stosowaniu krószych tablicach jest aktualna.
Go to the top of the page
+Quote Post
-Gość_Harry-
post 3.02.2006, 21:58:00
Post #5





Goście







Już działa.

Zmieniłem ten fragment:
  1. <?php
  2. //...
  3. if ($cookieinfo == 'vistedmain') {
  4. //...
  5. ?>


Dziękuję za pomoc.
Muszę się jeszcze duuuuuuuuuużo nauczyć.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 11:34