Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Strona zależna od cookies
Forum PHP.pl > Forum > Przedszkole
Gość_Harry
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
dr_bonzo
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
Gość_Harry
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
mike
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ść_Harry
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ć.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.