Fórum > PHP > session a session_register

session a session_register

Autor: EvA
Datum: 24.11. 2004 09:47
mam problem, na index.php mam session_start(); session_name(); a potom mam nemalo session_register(); neskor do session premenych davam potrebne data; mojim problemom je to ze v inich *.php v korych mam taktiez session_start(); a session_name(); ni nefunguju session premene ... na pc co mam doma, po nakonfiguravani php.ini (session_directory) my to funguje.. ako to mam rozbehat aj tu ? .. za radu dakujem
Autor: Marek z Markova
Datum: 24.11. 2004 11:08
Máš tam session_write_close()?
Autor: EvA
Datum: 24.11. 2004 11:19
nemam tam nic take a zatial mi to nebolo treba. naco to sluzi ?

inak mam to robebe stylom 
 session_register('blabla');

 $blalba='sadf';


a potom v inom php iba pracujem s tym $blalba

ako vravim doma mmi to funguje noproblem ... neviem preco tu nie
Autor: Marek z Markova
Datum: 24.11. 2004 13:02
ono právě session_write_close() provede zápis těch sessions nesmyslů. Jinak to visí kdesi ve vzduchu. Já jsem s tím zrovna včera trochu experimentoval, páč jsem s tím nikdy nepracoval a když se to neuzavře, tak se to nezapíše. Pak to nefunguje.
A ještě něco, na wz není zapnuto (celkem rozumně) register_global(s)?, takže nastavní session parametrů se dějě pomocí 

$_SESSION['blabla'] = 'sadf';

Takže session_start()
$blabla = $_SESSION["blabla"];

...
pak se pracuje s $blabla
a nastavní zpět 
$_SESSION["blabla"] = 'neco';
a  na zaver
sessions_write_close();

toto by melo chodit.
Kdyby to nešlo, tak zkusím vyrobit chodící příklad.
Autor: EvA
Datum: 24.11. 2004 13:38
ok, dik ... skusim to
Autor: EvA
Datum: 24.11. 2004 14:16
skusil som to ako si mi napisal ... moc mi to neslo... moc to nechapem ...
pr:

session start();
 $s_mysql_host=$_SESSION["s_mysql_host"];
 $s_mysql_user=$_SESSION["s_mysql_user"];
 $s_mysql_pass=$_SESSION["s_mysql_pass"];
 $s_mysql_db=$_SESSION["s_mysql_db"];

 $_SESSION["s_mysql_host"]='xx';
 $_SESSION["s_mysql_user"]='xx';
 $_SESSION["s_mysql_pass"]='xx';
 $_SESSION["s_mysql_db"]='xx';

... a td. a v inom *.php mi ti nechce chodit .... neviem co s tym
Autor: EvA
Datum: 24.11. 2004 14:21
Ak sa ti bude chciet tak mozes spravit priklad kde sa bude logovat do mysql pomocou session v inom php (data poslane pomocou formularu)


index.php ...

...sessions...

<form acrion="druhe.php">
.
.
.
</form>

druhe.php ...

...sessions...

mysql_connect();
Autor: 22kozoroh
Datum: 24.11. 2004 14:35
kam do mysql? co presne chces? aby ses nekam zalogovala pomoci uzivatelskeho jmeno a hesla z mysql? a aby si to pamatovalo veci pres sessions?
Autor: EvA
Datum: 24.11. 2004 15:01
tak nejak ...
Autor: Marek z Markova
Datum: 24.11. 2004 15:16
<?php
 session_start();
 if ( !isset($_SESSION['count']) ) {
   $_SESSION['count'] = 1;
   echo "poprve<br/>\n";
 } else {
   echo $_SESSION['count'];
   $_SESSION['count']++;
 }
 session_write_close();
?>

kdyz toto ulozis do dvou souboru, tak me osobne to funguje spravne:
pri prvnim zavolani se to nastavi, pri kazdem dalsim se to zobrazi a updatuje.
A je uplne jedno z ktereho php to volam.

Vidim mozne zadrhele. Sessions se ukladaji do cookies, jsou povolene? Pokud ne posilaji se pres url(?) jako SID. Neni tomu zabraneno?

Na serveru je nastaven cas trvani session informaci, nejsou nekonecne, asi se to da zmenit, nevim nepatral jsem po tom. Ale std je nastaveno 1440 minut. tj. tusim cely den. Pak data v sessions prestanou fungovat.

Nevim jestli je to nejvhodnejsi pouziti sessions... nestacil by prosty include s pozadovanymi udaji?
Autor: 22kozoroh
Datum: 24.11. 2004 16:05
ja to mam jinak ...

prihlasovaci formular ...


pak soubor kterej to vyhodnocuje a ten ma tuto konstrukci


vytahne promenny z POST .. heslo zahashuje pres MD5
a pokud ty promenny teda nejsou prazdny tak se mi to pichne na databazi s tim je spojeny select 

	$select = "select class from users where user='$user' and heslo='$heslo'"; (class mam kvuli opravneni)

pak tam mam naky podminky kvuli overeni uzivatelovi tootznosti a hesla lz DATABAZE a potom si ulozim vse do sessions a pouziji na chranene strance

----

chranena .php
----

session_start();
overim jestli prosla sessions z te overovaci PAGES a kdyz jo .. tak te to pusti na stranku , kdyz ne tak smolec :)....

a pak tam mam naky blaboly kvuli clenum, opravneni atd... touz nepotrebujes... 

staci ti to takhle?
Tento web používá k poskytování služeb a analýze návštěvnosti soubory cookie. Používáním tohoto webu s tím souhlasíte. Další informace