PHPда сессилар билан ишлашда кузатиладиган муаммолар
Сессия билан ишлашдаги асосий муаммо шуки: сессиялар билан иш тугагунича браузерга ҳеч қандай чиқиш (output) қилиб бўлмайди, акс ҳолда сиз куйидаги хатолини кўрасиз: Warning: Cannot send session cookie - headers already sent.
Браузерга чиқиш деганимиз нима? Бу <?php
дан олдинги ҳар қандай белги, масалан, матн ёки тег,
ҳатто бошлиқ joy, шунингдек, PHP томонидан хатолик
хабари. Бундан ташқари, echo, var_dump
ва print_r орқали ҳам чиқиш қилиб бўлмайди.
Сизнинг ҳужжатингиз кодировкаси албатта
BOMсиз utf-8 бўлиши керак. Агар у
оддий utf-8 бўлса, <?php
дан олдин мазкур кодировка учун хос бўлган
maxsus белги қўйилади ва сессиялар ишламayди.
Куйидаги коддаги хатоларни тузатинг:
матн
<?php
session_start();
?>
Куйидаги коддаги хатоларни тузатинг:
<p>
<?php
session_start();
?>
</p>
Куйидаги коддаги хатоларни тузатинг:
<?php
echo 'матн';
session_start();
?>