Galimos problemos dirbant su PHP sesijomis

Pagrindinė problema dirbant su sesija yra ši: negalima atlikti jokio išvesties į naršyklę iki darbo su sesijomis pabaigos, priešingu atveju pamatysite tokią klaidą: Warning: Cannot send session cookie - headers already sent.

Kas yra išvestis į naršyklę? Tai bet koks simbolis prieš <?php, pavyzdžiui, tekstas ar tagas, net tarpas, taip pat klaidos pranešimas iš PHP pusės. Be to, negalima daryti išvesties naudojant echo, var_dump ir print_r.

Jūsų dokumento kodavimas būtinai turi būti utf-8 be BOM. Jei jis bus tik utf-8, tai prieš <?php bus įterptas specialus simbolis, būdingas šiame kodavime, ir sesijos neveiks.

Задание 1

Ištaisykite klaidas, padarytas šiame kode:

htmltext
<?php
  session_start();
?>
Задание 2

Ištaisykite klaidas, padarytas šiame kode:

html<p>
  <?php
    session_start();
  ?>
</p>
Задание 3

Ištaisykite klaidas, padarytas šiame kode:

html<?php
  echo 'text';
  session_start();
?>