[ Príspevkov: 12 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
sessions

Registrovaný: 14.11.10
Prihlásený: 22.09.17
Príspevky: 129
Témy: 27 | 27
NapísalOffline : 21.02.2011 21:19 | sessions

ahojte :) mam taku pre vas hadam lahucku otazocku :). Lozim po nete a niekde najdem ze pri zadavani premennych do session vyslovene TREBA pisat funkciu
Kód:
session_register("premenna");
a inde o tom niet ani zmienky a pisu ze staci napisat
Kód:
$_SESSION["premenna"]="hodnota";
Cize ako to je? Treba to session_register pisat alebo nie?

Skusal som oboje a oboje aj funguje, len ci to tak ostane aj dobuducna, kedze niekde pisu ze ju treba pisat, a vyvojari PHP tu funkciu tiez asi nevymysleli pre nic zanic :)

dakujem :)


Offline

Užívateľ
Užívateľ
sessions

Registrovaný: 26.11.06
Prihlásený: 09.10.24
Príspevky: 4118
Témy: 319 | 319
Bydlisko: HE/BA
NapísalOffline : 21.02.2011 21:31 | sessions

V starších verziách sa používala aj tá fcia. V novších ju chcú úplne odstrániť. Myslím, že predstavuje aj nejaké bezpečnostné riziko alebo také niečo.


Offline

Čestný člen
Čestný člen
sessions

Registrovaný: 21.02.06
Prihlásený: 08.12.14
Príspevky: 5404
Témy: 30 | 30
Bydlisko: Bratislava
NapísalOffline : 21.02.2011 23:52 | sessions

venom2 - niekedy stačí pozrieť dokumentáciu priamo na php.net a zistíš, že session_register je zastaralé a neodporúčajú to používať.


_________________
Neradím a nekomunikujem cez SS, ak niečo potrebujete, máte iné možnosti: Ak vám zmizla téma, alebo sa vám niečo nepáči. Ak potrebujete nahlásiť príspevok/človeka, reportujte ho. Ak máte s niečim problém, riešte to v danej téme.
Offline

Užívateľ
Užívateľ
sessions

Registrovaný: 14.11.10
Prihlásený: 22.09.17
Príspevky: 129
Témy: 27 | 27
Napísal autor témyOffline : 25.02.2011 22:58 | sessions

Vedeli by ste mi prosim poradit ako sa da zistit ci su v session ulozene premenne (nie ci je nastartovana, ale ci obsahuje premenne)? Ide mi o to, ze ak session premenne neobsahuje, tak sa do session nacitaju zo suboru, a ak session premenne uz obsahuje tak sa len prepisu pomocou formulara. Neviem co mam zadat do podmienky, ktora to testuje (dole v zdrojaku je vyznacena). Skusal som
Kód:
if(isset($_SESSION['premenna1'] != ""))
if($_SESSION)
if(isset($_SESSION))

a este kadeco co ma napadlo, ale stale nieco nefunguje a uz mi z toho hrabe :D. Zdrojaky vyzeraju takto:

Sablona:
Kód:
<? session_start(); ?>
<html>
   <head>
   </head>
   <body>
            <?   include ("....."); // vlozenie suboru do sablony   ?>
   </body>
</html>


Includovany subor:
Kód:
<?// nacitanie premennych zo suboru
   $subor = File("subor.php");
   for ($i=0; $i<Count($subor); $i++)
   {
      $load_premenna1 = trim($subor[0]);
      $load_premenna2 = trim($subor[1]);
   }

// priradenie premennych do session
if(???????)      // PROBLEMOVA PODMIENKA
   {
      $_SESSION['premenna1'] = (string)$_POST['premenna1']; // ak session premenne obsahuje, premenne by sa mali prepisat
      $_SESSION['premenna2'] = (string)$_POST['premenna2'];
   }
   else
   {
      $_SESSION['premenna1'] = $load_premenna1;  // ak session premenne neobsahuje, premenne sa nacitaju zo suboru
      $_SESSION['premenna2'] = $load_premenna2;
   }

//formular   ?>
<form action="subor2.php?odoslat" method="post">
   <input type="text" name="premenna1" value="<? echo $_SESSION['premenna1']; ?>" size="8" maxlength="10">
   <input type="text" name="premenna2" value="<? echo $_SESSION['premenna2']; ?>" size="8" maxlength="10">
   <input type="submit" name="odoslat" value="odoslat" style="width: 150px">      
</form>
<?
// zapis do suboru
if(isset($_REQUEST['odoslat']))
   {   
     $subor= "subor.php";
         $fh = fopen($subor, 'w') or die("súbor sa nepodarilo otvoriť");
         $stringData =    $_SESSION['premenna1']."\n".$_SESSION['premenna2'];
         fwrite($fh, $stringData);         
         fclose($fh);
   }
?>


Offline

Užívateľ
Užívateľ
sessions

Registrovaný: 26.12.06
Prihlásený: 16.11.19
Príspevky: 3971
Témy: 181 | 181
Bydlisko: Nitra / Bra...
NapísalOffline : 25.02.2011 23:09 | sessions

empty()


_________________
Sorry za prelkepy
Offline

Užívateľ
Užívateľ
sessions

Registrovaný: 14.11.10
Prihlásený: 22.09.17
Príspevky: 129
Témy: 27 | 27
Napísal autor témyOffline : 25.02.2011 23:47 | sessions

velmi dobry napad :) avsak nepomaha to, stale je tu ten problem: ak odoslem formular premenne v session su OK, ak sa prepinam medzi inymi includovanymi strankami ako je ta s formularom tiez je to OK, ale ak sa vratim na stranku kde je formular (iba si ju zobrazim, formular neodosielam) tak session mi vracia prazdne stringy a nulove integre. Vyzera to akokeby sa tie hodnoty prepisali, ale naozaj sa nemaju kde prepisat. Hodnoty priradujem iba v tej podmienke co som pisal. Ked otvorim subor, tak obsah je v poriadku. Uz fakt si neviem rady :(.


Offline

Užívateľ
Užívateľ
sessions

Registrovaný: 26.12.06
Prihlásený: 16.11.19
Príspevky: 3971
Témy: 181 | 181
Bydlisko: Nitra / Bra...
NapísalOffline : 26.02.2011 0:21 | sessions

no tak v tvojom priapde to musi byt !empty(), hadam si tam ten vykricnik dal :)


_________________
Sorry za prelkepy
Offline

Užívateľ
Užívateľ
sessions

Registrovaný: 14.11.10
Prihlásený: 22.09.17
Príspevky: 129
Témy: 27 | 27
Napísal autor témyOffline : 26.02.2011 1:44 | sessions

jasne :) ja som skusal vseliake kombinacie, variacie, permutacie a neviem co este :D a furt to nefunguje ako ma.
Ak dam:
Kód:
if(!empty($_SESSION))
   {
      $_SESSION['premenna1'] = (string)$_POST['premenna1']; // nacitanie z formulara
      $_SESSION['premenna2'] = (string)$_POST['premenna2'];      
   }
   else
   {
      $_SESSION['premenna1'] = $load_premenna1; // nacitanie zo suboru
      $_SESSION['premenna2'] = $load_premenna2;
   }

tak je to tak ako som popisoval vyssie. Cize odoslem formular, hodnoty v session su spravne, prekliknem sa na ine includovane stranky, obsah session je stale spravny, ale ak sa prekliknem spat na formular tak vsade mam prazdne hodnoty.

Ak to dam BEZ vykricnika, tak ked pridem na formular prvy krat, v session su same prazdne hodnoty. Ak odoslem formular alebo ak sa prekliknem na inu includovanu stranku a potom zase spat na formular, tak hodnoty v session su zrazu spravne, avsak hodnoty nacitava vzdy len zo suboru.
Tento druhy sposob (BEZ vykricnika) v podstate funguje tak ako je kod napisany, lebo session je najprv prazdna, tak cita hodnoty z formulara, ale kedze nie je odoslany tak nacita len prazdne stringy a nulove integre. Potom pri druhom nacitani session nie je prazdna tak cita zo suboru a vyzera to byt ok. Ale ked prehodim priradzovanie hodnot cize:
Kód:
if(empty($_SESSION))
   {
      $_SESSION['premenna1'] = $load_premenna2;
      $_SESSION['premenna2'] = $load_premenna1;
   }
   else
   {
      $_SESSION['premenna1'] = (string)$_POST['premenna1'];
      $_SESSION['premenna2'] = (string)$_POST['premenna2'];      
   }

tak to zase po opatovnom prekliknuti vrati nulove hodnoty, lebo v podstate to je ten prvy sposob len opacne napisany. Ja to proste nechapem :D. Su len 2 moznosti ako sa moze priradit hodnota premennej. Bud nacitanim zo suboru alebo odoslanim formulara. A ani tam ani tam prazdne hodnoty nemam, tak odkial sa beru ? Co ich nuluje?
No ja som z toho jelen :D


Offline

Správca fóra
Správca fóra
sessions

Registrovaný: 27.07.07
Príspevky: 3948
Témy: 51 | 51
Bydlisko: Bratislava
NapísalOffline : 26.02.2011 7:35 | sessions

pri pouziti $_POST kontrolujes, ci bol formular odoslany? Lebo ak si uz raz formular odoslal a $_SESSION obsahuje nejake hodnoty, prekliknes sa na inu stranku a nasledne sa vratis spat na formular, tak $_POST neobsahuje nic, a zrejme preto sa ti hodnoty v $_SESSION vynuluju... skus si zapnut zobrazovanie chybovych hlasok...


_________________
NTB: Acer Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB | RAM: 8GB DDR3 1066 MHz | HDD: 1TB SSD WD BLUE
Offline

Užívateľ
Užívateľ
sessions

Registrovaný: 14.11.10
Prihlásený: 22.09.17
Príspevky: 129
Témy: 27 | 27
Napísal autor témyOffline : 26.02.2011 14:34 | sessions

vidis stenley presne v tomto to bolo :) nechapem ako to ze ma to nenapadlo :D, dakujem velmi pekne vsetkym za rady, idem si trieskat hlavu o stenu :DD

inak co sa tyka toho vypisovania chyb, zrejme to mame bloknute na serveri, lebo napisal som
Kód:
error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);
error_reporting(-1);
error_reporting(E_ALL ^ E_NOTICE);

a ani pri jednom mi chybu nevypisalo, iba prazdnu stranku. Alebo napadne niekoho ako by sa to dalo obist ? :)


Offline

Užívateľ
Užívateľ
sessions

Registrovaný: 26.12.06
Prihlásený: 16.11.19
Príspevky: 3971
Témy: 181 | 181
Bydlisko: Nitra / Bra...
NapísalOffline : 26.02.2011 17:59 | sessions

http://sk2.php.net/manual/en/errorfunc. ... lay-errors


_________________
Sorry za prelkepy
Offline

Užívateľ
Užívateľ
sessions

Registrovaný: 14.11.10
Prihlásený: 22.09.17
Príspevky: 129
Témy: 27 | 27
Napísal autor témyOffline : 26.02.2011 21:25 | sessions

postupoval som podla prikladu dole
Kód:
error_reporting(E_ALL);
ini_set('display_errors','On');
a nepomaha to, stale to zobrazi iba prazdnu stranku.

Ja robim na skolskom serveri a tie chyby tam minuly rok urcite vypisovalo, len teraz zrejme nieco zmenili a uz to nevypise, tak neviem co s tym...


 [ Príspevkov: 12 ] 


sessions



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

Sessions help

v PHP, ASP

3

453

12.07.2007 11:14

TECHNODROME

V tomto fóre nie sú ďalšie neprečítané témy.

ochrana sessions

v PHP, ASP

22

1039

23.02.2011 18:31

chrono

V tomto fóre nie sú ďalšie neprečítané témy.

Dvojrozmerne sessions

v PHP, ASP

11

641

09.01.2009 22:20

jaji

V tomto fóre nie sú ďalšie neprečítané témy.

sessions error

v PHP, ASP

8

634

14.11.2008 18:39

Slappy

V tomto fóre nie sú ďalšie neprečítané témy.

Sessions chyba???

v PHP, ASP

3

431

05.11.2007 19:10

pepek92

V tomto fóre nie sú ďalšie neprečítané témy.

Remove Duplicate Sessions

v Redakčné systémy

0

579

14.10.2006 14:49

JanoF

V tomto fóre nie sú ďalšie neprečítané témy.

Problém so sessions

v PHP, ASP

1

358

25.12.2011 22:00

chrono

V tomto fóre nie sú ďalšie neprečítané témy.

sessions-nejde odstranit

[ Choď na stránku:Choď na stránku: 1, 2 ]

v PHP, ASP

34

1673

01.10.2008 21:10

dadmtb

V tomto fóre nie sú ďalšie neprečítané témy.

PHP a SESSIONS

v PHP, ASP

2

473

28.10.2007 14:22

tatysp

V tomto fóre nie sú ďalšie neprečítané témy.

Pomoc so SESSIONS

v PHP, ASP

7

503

11.10.2007 19:33

pepek92

V tomto fóre nie sú ďalšie neprečítané témy.

problem so sessions

v PHP, ASP

3

769

28.12.2006 18:19

programator

V tomto fóre nie sú ďalšie neprečítané témy.

Problém so SESSIONs

v PHP, ASP

3

865

07.01.2012 21:41

hal_sk

V tomto fóre nie sú ďalšie neprečítané témy.

alternativne odkladanie sessions

v PHP, ASP

1

494

24.10.2007 16:13

mondzo

V tomto fóre nie sú ďalšie neprečítané témy.

[VYRIESENE] Problem so sessions

v PHP, ASP

2

405

28.02.2009 16:32

bruno.b

V tomto fóre nie sú ďalšie neprečítané témy.

Literatura o cookies, sessions, tokens, authentifications

v PHP, ASP

1

331

19.01.2016 15:26

chrono

V tomto fóre nie sú ďalšie neprečítané témy.

Could not delete old search id sessions

v Redakčné systémy

3

1352

22.04.2006 20:28

gumy



© 2005 - 2025 PCforum, edited by JanoF