Asi nefungují Session

Vyřešeno2.57K zhlédnutíWebhosting
0

Ahoj,

na localhostu jsem si udělat login systém, kde po přihlášení mám: $_SESSION[‚username‘] = $name; header(‚location:home.php‘);

a na stránce home page: <?php echo $_SESSION[‚username‘]?> + nad kodem v php:

<?php
session_start();

if(!isset($_SESSION[‚username‘])){
header(‚location:login.php‘);
}
?>

no jméno mi to nevypisuje, ani když jsem si dal echo $_SESSION[‚username‘]; v souboru, kde dělám po přihlášení.

pak mi tím pádem nefunguje ani php kód nad html a když se přihlásím, tak mě to vrátí zpátky, protože to nenajde tu session.

Díval jsem se na stackoverflow a tam psali: Povolujete soubory cookie ze vzdálené domény? PHP je obvykle nakonfigurováno tak, aby ukládalo vaše session_id v cookie na vašem počítači, takže pokud nepovolíte cookies z vaší domény webhostingu, session_id nebude uložen z login.php, a proto jej nelze vyvolat na index.php

a nevím, jestli je zde v konfiguraci php potřeba něco zapnout nebo vypnout, nebo jinou verzi php než 7.3?
Budu rád za každou pomoc 🙂

Role: Zákazník
Otázka je uzamčena pro nové odpovědi.
RM130195 Vybral nejlepší odpověď 24. 8. 2020
0

Ano, už to jede, stačilo vypnout session secure v konfiguraci php, to jsem přesně potřeboval vědět, jestli zde nemůže být něco špatně a bylo. Děkuji za vyřešení problému.

Role: Zákazník
RM130195 Vybral nejlepší odpověď 24. 8. 2020
0
8.06K Odpověď od WEDOS Internet, a.s. 2 Comments

Dobrý den,

jakým způsobem ukládáte proměnnou $name ? Pokud si uděláte výpis $_SESSION v login, vidíte tam dané  jméno ? Případně to stejné, když to následně uděláte na home.php.

Pravděpodobně ji jen špatně předáváte danou proměnnou.

Role: Podpora Web: https://blog.wedos.cz/wedos-ziskal-akreditaci-icann-pro-registraci-domen-a-hodlame-ji-vyuzit-naplno Vizitka: Programátor | Získali jsme akreditaci ICANN ...
KB218908 publikoval nový komentář 10. 8. 2020
0

na stránce validation.php mám

a v home page home.php mám

a jak říkám, na localhostu mi to šlo, tak právě nevím, proč to nejde zde

Role: Zákazník
MV270050 Změnil status na publikováno 7. 8. 2020
0

a když si ji vypíšu, tak se nevypíše, ani když místo $name dát např: „ahoj“;

Role: Zákazník
MV270050 Změnil status na publikováno 7. 8. 2020
0
53.63K Odpověď od WEDOS Internet, a.s. 1 Komentář

Dobrý den,

prosím o upřesnění na kterém z Vašich hostingů se toto děje?

Role: Podpora Web: https://stackoverflow.com/ Vizitka: Roses are Red, Violets are Blue Unexpected '{' on line 32.
DC258822 publikoval nový komentář 10. 8. 2020
0
53.63K Odpověď od WEDOS Internet, a.s. 2 Comments

Dobrý den,

jediný rozdíl, který vidím je, že na tomto webhostingu máte v konfiguraci PHP vypnutý parametr session_use_only_cookies. Bohužel upřimně nevím, zda na to tento parametr může mít vliv (spíše ne).

Ostatní proměnné se Vám vypisují? Nemůže být problém ve formuláři? Případně si zkuste script na jiném webhostingu.

Role: Podpora Web: https://stackoverflow.com/ Vizitka: Roses are Red, Violets are Blue Unexpected '{' on line 32.
KB218908 publikoval nový komentář 11. 8. 2020
0
8.06K Odpověď od WEDOS Internet, a.s. 7 Comments

w_home.php

<?php
 session_start();
 echo session_id();
 echo '<br>';
 echo $_SESSION['ahoj'];

w_index.php

<?php
 session_start();
 echo session_id();
 echo '<br>';
 echo $_SESSION['ahoj'];

w_login.php

<?php
 session_start();
 $_SESSION['ahoj'] = 'wedos';
 header('Location: http://wedos.gamelab.cz/w_home.php');

do w_index.php jsem navíc umístil phpinfo(); , aby jste si případně mohl zkontrolovat rozdílnost verzí já v rámci debugu pracoval s v.7.1.

V tomto případě je to plně funkční

Role: Podpora Web: https://blog.wedos.cz/wedos-ziskal-akreditaci-icann-pro-registraci-domen-a-hodlame-ji-vyuzit-naplno Vizitka: Programátor | Získali jsme akreditaci ICANN ...
KB218908 Edited comment 17. 8. 2020