Форумы портала PHP.SU » PHP » Программирование на PHP » Cannot send session cookie - headers already sent by ...

Страниц (5): « 1 2 [3] 4 5 »
 

31. Tox - 29 Февраля, 2012 - 21:10:39 - перейти к сообщению
да я уже так делал) не первый день в notepad)) все равно абракадабра
32. OrmaJever - 29 Февраля, 2012 - 21:14:18 - перейти к сообщению
Может есть мета тег с другой кодировкой или header() ?
А если нету, то их бы добавить
PHP:
скопировать код в буфер обмена
  1. header('Content-type: text/html; charset=utf-8');

CODE (html):
скопировать код в буфер обмена
  1. <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
33. Tox - 29 Февраля, 2012 - 21:15:24 - перейти к сообщению
Не, файл чистый в этом плане. header только с Location
все пашет, спасибо
34. DelphinPRO - 29 Февраля, 2012 - 21:19:44 - перейти к сообщению
OrmaJever пишет:
Но ведь без этих 3 бафтов програмы тоже могут отличить в какой кодировке файл! От них толку ноль?


Не могут. Все определения кодировок построены на статистическом анализе частоты использования имеющихся символов, и не дают 100% гарантии точности определения. Метки ВОМ как раз решают эту проблему.
Что касается "UTF-8 без ВОМ", то это не отдельная кодировка, а такой своеобразный хак для PHP, который не умеет корректно работать с метками ВОМ, точнее почему-то считает их печатными символами. Вот и приходится в файле с кодировкой utf-8 вырезать заветные три символа.
35. KoO - 05 Мая, 2012 - 11:40:42 - перейти к сообщению
Помоги плиз. Проблема как у всех, только мой сайт лежит на моём компе с Denwerом.
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at Z:\home\localhost\www\shop_mustang1\index.php:1) in Z:\home\localhost\www\shop_mustang1\sapka.php on line 2
Вот код
Sapka (Отобразить)

index (Отобразить)

Примерно тоже самое стоит на другом сайте,но там такой ошибки нет. BOM через Notepad++ отрубил, до того было 2 ошибки, вот осталась одна, как исправить не знаю.
36. DelphinPRO - 05 Мая, 2012 - 17:25:48 - перейти к сообщению

минут пять думал, что же такое "Сапка" O_o (sapka.php)
Понимание пришло неожиданно - это же "Шапка"!


Оба файла сохраните в utf8 без BOM
Попробуйте неиспользовать закрывающие теги ?> в самом конце файлов
37. KoO - 05 Мая, 2012 - 19:53:05 - перейти к сообщению
DelphinPRO пишет:
минут пять думал, что же такое "Сапка" O_o (sapka.php)
Понимание пришло неожиданно - это же "Шапка"!

извините, был файл уже Шапка,пришлось изощрится Ха-ха
про UTF8 уже сделал,после этого пропала ошибка типа этого Cannot send session cookie - headers already sent by (output started at script1.php:1 [ * ]) in script2.php on line 2 [ ** ]
Но вот 2 ошибка не пропадает,а с ?> как его убрать, тогда же работать ничего не будет Не понял

Хаха прикол, запустил заново дримвеер и сайт и вуаля
Спойлер (Отобразить)
38. DelphinPRO - 05 Мая, 2012 - 20:24:38 - перейти к сообщению
KoO пишет:
а с ?> как его убрать, тогда же работать ничего не будет

а вы пробовали? Это широкоизвестный прием для исключения случайных пробелов в выводе
(Добавление)
я вот сейчас скопировал ваш код, сохранил без БОМ и все работает как надо, без ошибок.
Вы уверены, что ваши файлы в utf-8 без BOM?
может дримвивер пересохраняет файлы не в той кодировке?
(Добавление)
перед <?php не должно быть пробелов и переводов строк.

Блин, об этой проблеме столько написано, что просто нереально самому в ней не разобраться.
39. KoO - 05 Мая, 2012 - 20:34:31 - перейти к сообщению
еслиб я ковырялся в php годик или 2, я бы наверно не мучился, но я учусь и у нас работа по созданию "Магазина" да да,в кавычках)))
и в этой сфере я лишь 3 недели)) Радость
может я прикреплю файл и вы посмотрите?
40. DelphinPRO - 05 Мая, 2012 - 20:54:38 - перейти к сообщению
файлы index.php и niz.php сохранены в UTF-8
а надо в UTF-8 without BOM

т.е. в данном случае мешает как раз та самая метка BOM в index.php
41. KoO - 05 Мая, 2012 - 20:57:33 - перейти к сообщению
касяк,я как раз лишь index не запускал в нотепаде++ и там не менял))
сейчас проверю
(Добавление)
помогло, но эм, появилась маленькая загвоздочка, теперь весь сайт куча каракуль Не понял как тогда с этим быть?
о это прикольно, без BOM каракули и сайт адско снесло влево, а с BOM всё отлично,что за бред? Не понял
42. DelphinPRO - 05 Мая, 2012 - 21:05:23 - перейти к сообщению
в HTML <meta http-equiv="content-type" content="text/html; charset=utf-8" />
в htaccess AddDefaultCharset utf-8
кодировка таблиц в БД - UTF8
кодировка соединения с БД utf-8
43. KoO - 05 Мая, 2012 - 21:12:51 - перейти к сообщению
эм, htaccess вообще не существует Закатив глазки
в БД Utf-8 стоит, а вот про кодировку соединения я не понял Не понял
44. Muxa - 09 Мая, 2012 - 11:29:51 - перейти к сообщению
сразу после коннекта
CODE (SQL):
скопировать код в буфер обмена
  1.  
  2. mysql_query("set names utf8");
  3.  

htaccess создать одна минута Подмигивание файл с именем .htaccess - туда вписываешь строку с дефолтной кодировкой
45. imya - 11 Сентября, 2012 - 21:26:49 - перейти к сообщению
Наконец-то решил зарегистрироваться, а то везде проблема эта описана одинаково и всё равно ничего не помогает. Итак, суть проблемы: есть тестовое задание(сайт с регистрацией, формой входа, личным кабинетом и формой обратной связи), в регистрации косяки, личный кабинет не особо выводится из-за того, что в нужном файле выскакивает ошибка вышеописанная, привожу коды файлов.
Да, забыл, все файлы через notepad++ преобразовал в utf-8 без BOM. Растерялся
index.php
PHP:
скопировать код в буфер обмена
  1. <?PHP session_start();?>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  6. <title>
  7. <?PHP $title="Главная";
  8. echo $title;?></title>
  9. <link rel="stylesheet" href="css/style.css" />
  10. </head>
  11. <body>
  12. <div class="wrapper">
  13.     <div class="head">
  14.         <div class="user">
  15.         <?PHP
  16.                
  17.                  echo 'Hello,'.$_SESSION['firstname'];
  18.                 ?>
  19.         </div>
  20.     </div>
  21.                 <div class="left_menu">
  22.            <h3>Главное меню</h3>
  23.                 <ul>
  24.                         <li><a href="/">Главная</a></li>
  25.                         <li><a href="#">Контакты</a></li>
  26.                         <li><a href="index.php?cab=1">Личный кабинет</a></li>
  27.                         <li><a href="index.php?log=1">Вход</a> /<a href="<?PHP session_destroy();?>">Выход</a></li>
  28.                 </ul>
  29.         </div>
  30.         <div class="content">
  31.     <?PHP
  32.                 if ($_GET['log']==1)
  33.                         require('log.php');
  34.                 if ($_GET['reg']==1)
  35.                         require('reg.php');
  36.                 if ($_GET['cab']==1)
  37.                         require('privat_akk.php');
  38.          ?>
  39.    
  40.    
  41.    
  42.     </div>
  43.     <div class="clear"></div>
  44.     <div class="footer">
  45.     <div class="copy"> Copyright © 2012 by me</div>
  46.     </div>
  47. </div>
  48. </body>
  49. </html>


private_akk.php
PHP:
скопировать код в буфер обмена
  1. <?PHP session_start();
  2. require('db.php');
  3. $row=mysql_query("SELECT * FROM `users`;") or die("Bad");
  4. $res=mysql_fetch_assoc($row);
  5. if ($_SESSION['login']==$res['login'])
  6. {
  7. ?>
  8. <div class="cabinet">
  9. <form name="cabinet" method="post" action="save_private.php">
  10. Ваша фамилия:<input type="text" name="firstname" value="<?PHP echo $res['firstname'] ?>" placeholder="Ваш фамилию" />
  11. Ваше имя:<input type="text" name="lastname" value="<?PHP echo $res['lastname'] ?>" placeholder="Ваш имя" />
  12. Ваш логин:<input type="text" name="login" value="<?PHP echo $res['login'] ?>" placeholder="Ваш логин" />
  13. Ваш пароль:<input type="text" name="password" value="<?PHP echo $res['pass'] ?>" maxlength="16" placeholder="Ваш пароль" />
  14. Ваш e-mail:<input type="text" name="email" value="<?PHP echo $res['email'] ?>" placeholder="Ваш e-main" />
  15. Ваша дата рождения:<input type="text" name="date" value="<?PHP echo $res['date'] ?>" placeholder="Ваш дату рождения" />
  16. Ваш моб. телефон:<input type="text" name="mobile" value="<?PHP echo $res['mobile'] ?>" placeholder="Ваш телефон" />
  17. Выберите аватарку:<input type="file" name="avatar"  value="<?PHP echo $res['avatar'] ?>" />
  18. <input type="submit" name="register" value="Изменить настройки" />
  19. </form>
  20. </div>
  21. <?PHP }
  22. ?>


Собс-но сама ошибка:
Цитата:
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at Z:\home\smkvizion\www\index.php:7) in Z:\home\smkvizion\www\privat_akk.php on line 1
Success

Ещё, вот вопрос, какой-то Success выводится непонятно откуда и в кабинете и в регистрации, если не заполнены поля, на ошибки мускула не похоже, откуда она выплывает?
Спасибо за ответ.

 

Powered by ExBB FM 1.0 RC1