Obsah fóra
PravidláRegistrovaťPrihlásenie




Odpovedať na tému [ 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
Príspevok NapísalOffline : 21.02.2011 21:19

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ý: 22.01.24
Príspevky: 4118
Témy: 319
Bydlisko: HE/BA
Príspevok NapísalOffline : 21.02.2011 21:31

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
Bydlisko: Bratislava
Príspevok NapísalOffline : 21.02.2011 23:52

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
Príspevok Napísal autor témyOffline : 25.02.2011 22:58

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
Bydlisko: Nitra / Bra...
Príspevok NapísalOffline : 25.02.2011 23:09

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
Príspevok Napísal autor témyOffline : 25.02.2011 23:47

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
Bydlisko: Nitra / Bra...
Príspevok NapísalOffline : 26.02.2011 0:21

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
Príspevok Napísal autor témyOffline : 26.02.2011 1:44

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
Bydlisko: Bratislava
Príspevok NapísalOffline : 26.02.2011 7:35

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
Príspevok Napísal autor témyOffline : 26.02.2011 14:34

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
Bydlisko: Nitra / Bra...
Príspevok NapísalOffline : 26.02.2011 17:59

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
Príspevok Napísal autor témyOffline : 26.02.2011 21:25

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...


Odpovedať na tému [ Príspevkov: 12 ] 


Podobné témy

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

v PHP, ASP

22

996

23.02.2011 18:31

chrono Zobrazenie posledných príspevkov

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

v PHP, ASP

11

604

09.01.2009 22:20

jaji Zobrazenie posledných príspevkov

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

v PHP, ASP

8

589

14.11.2008 18:39

Slappy Zobrazenie posledných príspevkov

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

v PHP, ASP

3

393

05.11.2007 19:10

pepek92 Zobrazenie posledných príspevkov

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

v PHP, ASP

3

420

12.07.2007 11:14

TECHNODROME Zobrazenie posledných príspevkov

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

1607

01.10.2008 21:10

dadmtb Zobrazenie posledných príspevkov

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

v PHP, ASP

2

442

28.10.2007 14:22

tatysp Zobrazenie posledných príspevkov

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

v PHP, ASP

7

470

11.10.2007 19:33

pepek92 Zobrazenie posledných príspevkov

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

v PHP, ASP

3

732

28.12.2006 18:19

programator Zobrazenie posledných príspevkov

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

v PHP, ASP

3

799

07.01.2012 21:41

hal_sk Zobrazenie posledných príspevkov

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

v PHP, ASP

1

459

24.10.2007 16:13

mondzo Zobrazenie posledných príspevkov

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

v Redakčné systémy

0

536

14.10.2006 14:49

JanoF Zobrazenie posledných príspevkov

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

v PHP, ASP

1

327

25.12.2011 22:00

chrono Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. [VYRIESENE] Problem so sessions

v PHP, ASP

2

386

28.02.2009 16:32

bruno.b Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Literatura o cookies, sessions, tokens, authentifications

v PHP, ASP

1

306

19.01.2016 15:26

chrono Zobrazenie posledných príspevkov

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

1311

22.04.2006 20:28

gumy Zobrazenie posledných príspevkov


Nemôžete zakladať nové témy v tomto fóre
Nemôžete odpovedať na témy v tomto fóre
Nemôžete upravovať svoje príspevky v tomto fóre
Nemôžete mazať svoje príspevky v tomto fóre

Skočiť na:  
cron

Powered by phpBB Jarvis © 2005 - 2024 PCforum, webhosting by WebSupport, secured by GeoTrust, edited by JanoF
Ako väčšina webových stránok aj my používame cookies. Zotrvaním na webovej stránke súhlasíte, že ich môžeme používať.
Všeobecné podmienky, spracovanie osobných údajov a pravidlá fóra