Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów
php sesje - przypisanie losowej wartości dla zmiennej - 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: php sesje - przypisanie losowej wartości dla zmiennej (/thread-php-sesje-przypisanie-losowej-warto%C5%9Bci-dla-zmiennej)



php sesje - przypisanie losowej wartości dla zmiennej - spider87 - 27-12-2009

Jak w php zrobić coś takiego:
do jednej ze zmiennych sesyjnych przypisywana jest losowa wartość z przedziału (1,10) i np. jak wylosuje 5kę, to ta wartość zmiennej zostaje dla całej sesji na stałe, niezależnie od odświeżania strony. Ja jak piszę, to przy odświeżaniu i tak mi zmienia wartości ... Z góry dziękuję za wszelką pomoc Smile


RE: php sesje - przypisanie losowej wartości dla zmiennej - KowR - 27-12-2009

Na każdej Twojej stronie, na samej górze musisz mieć:

<?php
session_start();
?>

I potem dopiero możesz operować na zmiennych sesyjnych (tworzyć, zmieniać wartość etc.).


RE: php sesje - przypisanie losowej wartości dla zmiennej - spider87 - 27-12-2009

tak, to wiem. Nie wiem jak przypisać randoma co sie losuje tylko raz na potrzeby sesji i nie zmienia się przy odświeżaniu, tylko dopiero po zamknięciu sesji i rozpoczęciu nowej. Mam:

<?
session_name("abc");
session_start();
$_SESSION['losowa']=rand(1,10);
?>

co nie daje pożądanego efektu. Jak to zrobić?


RE: php sesje - przypisanie losowej wartości dla zmiennej - KowR - 27-12-2009

<?php
session_start();
if($_SESSION['losowa'] == '') {
$_SESSION['losowa'] = rand(1,10);
}

// gdzieś musisz zakończyć tą sesję - może to Ci zrobić serwer albo ty używają unset($_SESSION['losowa']);
?>

Musisz dać warunek, by sprawdzić czy sesja jest pusta, jeżeli tak to losujesz liczbę, jeżeli nie to nie przypisujesz. Bo co odświeżenie przypisywałeś sesji nową liczbę.


RE: php sesje - przypisanie losowej wartości dla zmiennej - Smertius - 27-12-2009

Bo za każdym razem jak odświeżasz stronę, do zmiennej $_SESSION['losowa'] przypisujesz inną wartość. Wstaw

Kod PHP:
if(!isset($_SESSION['losowa'])
(
$_SESSION['losowa']=rand(1,10);


EDIT:
Rodi mnie ubiegł Wink


RE: php sesje - przypisanie losowej wartości dla zmiennej - spider87 - 28-12-2009

dziekuje Smile już wszystko jasne Smile