Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Nevypisuje se mi echo proměnné

V jednom souboru mám

<?php
echo $druh; /*vypisuje se*/

$_SESSION['id_hlasujiciho']=$id_hlasujiciho;
$_SESSION['druh']=$druh;
?>

a v dalším souboru kam se to posílá přes odkaz mám

<?php
$_SESSION['id_hlasujiciho']=$id_hlasujiciho;
$_SESSION['druh']=$druh;

$id_hlasujiciho = $_SESSION['id_hlasujiciho'];
$druh = $_SESSION['druh'];
?>

a v ještě jednom, co se do druhého includuje je

<?php
$id_hlasujiciho = $_SESSION['id_hlasujiciho'];
$druh = $_SESSION['druh'];
echo 'tady druh a hlas<br>';
echo $druh;
if ($promenna =="druh") echo "$promenna druh je prazdna!<br>";
?>

A to echo $druh se vůbec nevypíše, ani to nevyhodí onu hlášku, že $druh je prázdná.
Co zase dělám blbě?

Předmět Autor Datum
máš na začátku každého PHP souboru session_start(); ? :-)
marekdrtic 21.04.2009 15:49
marekdrtic
Jsem to teď ještě zvlášť zkontroloval a mám. Navíc si myslím, že by to vypsalo onu hlášku if...prázd…
Kráťa 21.04.2009 15:56
Kráťa
V prvním souboru dej za $_SESSION['druh']=$druh; ještě echo $_SESSION['druh']; edit: Už vím, kde má…
marekdrtic 21.04.2009 15:59
marekdrtic
Děkuji ti dobrá vílo. "Já to hned říkal, abychom nejezdili..."
Kráťa 21.04.2009 16:07
Kráťa
Jaky maju vyznam tie druhe 2 riadky? IMHO su nezmyel. A=B a hned potom B=A ?
MM.. 21.04.2009 16:23
MM..
Nevím, ale hlavně že to chodí. :-)
Kráťa 21.04.2009 16:45
Kráťa
Já myslím, že jedno definuje proměnné a druhé je posílá přes sejšn dál (asi... možná).
Kráťa 21.04.2009 16:47
Kráťa
Jenže session je uloženo na server "pořád", i když ve 150 následujících skriptech je nedefinuješ, my…
marekdrtic 21.04.2009 19:03
marekdrtic
Tyjo to jsem nevěděl, já myslel že je (to $_SESSION['druh']=$druh;) musím vypisovat v každém souboru… poslední
Kráťa 21.04.2009 20:41
Kráťa
Ked si ich zo session tesne predtym vytiahol, tak ich IMHO netreba nikam posielat. Tie 2riadky (ktor…
MM.. 21.04.2009 19:31
MM..

V prvním souboru dej za $_SESSION['druh']=$druh; ještě echo $_SESSION['druh'];

edit: Už vím, kde máš chybu:

<?php
$_SESSION['id_hlasujiciho']=$id_hlasujiciho;
$_SESSION['druh']=$druh;

$id_hlasujiciho = $_SESSION['id_hlasujiciho'];
$druh = $_SESSION['druh'];
?>

Dokteré se to uloží = co v ní je
Musíš prohodit ty dva dvouřádky, aby byly první dva dole

výsledek:

<?php
$id_hlasujiciho = $_SESSION['id_hlasujiciho'];
$druh = $_SESSION['druh'];

$_SESSION['id_hlasujiciho']=$id_hlasujiciho;
$_SESSION['druh']=$druh;
?>

Ked si ich zo session tesne predtym vytiahol, tak ich IMHO netreba nikam posielat. Tie 2riadky (ktore maju na lavej strane SESSION) su tam podla mna zbytocne. Ale ked sa ti tam pacia mozes ich tam nechat, hned za opacnym priradenim vpodstate nerobia nic :) Mali by vyznam len keby si medzitym tie premenne modifikoval.

Zpět do poradny Odpovědět na původní otázku Nahoru