danielv13
25.01.2008, 22:20:17
Mam kodzik:
<?
?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<div align="center">
<?
if ( $krok == '1' )
{
?>
<form action="test.php?krok=2" method="post">
Czy odczuwasz ból a klatce piersiowej?<p>
<input type="radio" name="bol" value="1" /> Tak <input type="radio" name="bol" value="0" /> Nie<p>
<input type="submit" value="Dajlej >" />
</form>
<?
}
if ( $krok == '2' )
{
if ( $_REQUEST['bol'] == '1' )
{
setcookie("historia", "Czy odczuwasz ból w klatce piersiowej?|Tak|", time()+3600
); ?>
<?
}
}
// ...........
?>
Dlaczego wywala:
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/kas/domains/kasstudio.net/public_html/u/test.php:1) in /home/kas/domains/kasstudio.net/public_html/u/test.php on line 3
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/kas/domains/kasstudio.net/public_html/u/test.php:1) in /home/kas/domains/kasstudio.net/public_html/u/test.php on line 3

? :/

Tutaj przykład:
http://kasstudio.net/u/test.php?krok=1
potreb
25.01.2008, 22:46:22
<?php
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<div align="center">
<?php
if ( $krok == '1' )
{
?>
<form action="index.php?krok=2" method="post">
Czy odczuwasz ból a klatce piersiowej?<p>
<input type="radio" name="bol" value="1" /> Tak <input type="radio" name="bol" value="0" /> Nie<p>
<input type="submit" value="Dajlej >" />
</form>
<?php
}
if ( $krok == '2' )
{
setcookie("historia", "Czy odczuwasz ból w klatce piersiowej?|Tak|", time()+3600
); }
?>
danielv13
25.01.2008, 22:48:45
co to ma niby dac?
potreb
25.01.2008, 22:55:42
A sprawdzałeś? Jakie masz kodowanie pliku?
Ten błąd jest powszechny. Nie masz przypadkiem spacji przed <?php?
A stosowanie znacznika <? jest błędne bo nie każdy serwer odczytuje go jako skrypt php.
W jakim programie zapisujesz pliki do utf?
danielv13
25.01.2008, 23:03:57
Heh... w temacie jest napisane że nie mam spacji... Co do <? i <?php sprawdzałem oboje...
Kodowanie nie ma do tego nic...
Próbowałem zapisywać przez Notatnik i Dreamweaver... :/
Nic nie działa
potreb
25.01.2008, 23:08:00
Mówisz o notatniku? Zmień edytor. Notatnik nie zapisuje poprawnie do utf-8.
danielv13
25.01.2008, 23:09:37
Mówie też, że zapisywałem w Dramweaverze... ;|
potreb
25.01.2008, 23:15:35
No dobra, weź sprawdź sobie mój,
plik, sciągnij i wgraj na serwer.
Ale jak dla mnie najpierw zapisałeś w notatniku który utworzył bom sector a późnie próbowałeś w dream
danielv13
26.01.2008, 16:13:14
No działa

Ehh ten notatnik :]
potreb
26.01.2008, 16:14:30
No widzisz

Ja już używam sprawdzonych metod dla utf-u
Mlodycompany
14.02.2008, 00:13:20
Witam. Ja mam problem też ten sam tylko że w logowaniu. Wyskakuje mi błąd: Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at C:\usr\www\strona\index.php:8) in C:\usr\www\strona\log.php on line 2 . Co mam zrobic aby to zadziałało?? Proszę o pomoc. Z góry thx.
potreb
14.02.2008, 00:27:54
Nie odświeżaj tematów.
ob_start(); na poczatku strony i ob_end_flush(); na końcu
I było milion razy.
Sagge
16.02.2008, 04:15:48
Cytat(potreb @ 26.01.2008, 16:14:30 )

No widzisz

Ja już używam sprawdzonych metod dla utf-u

Zdradzisz je?
Mam ten sam problem. ob_start(); i ob_end_flush(); jest wstawione probuje cos z kodowaniem zdzialac, ale nic nie pomaga...
Cytat
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/sagge/ftp/logowanie/index2.php:6) in /home/sagge/ftp/logowanie/index2.php on line 8
1
jestes zalogowany jako krzysiek
3man
12.05.2009, 15:23:52
Stary temat ale poczułem obowiązek podzielenia się moim "odkryciem" (o ile jeszcze tego nie wiecie

Problem z kodowaniem znaków przy starcie sesji, pojawia się gdy nasz plik zapisujemy w kodowaniu utf-8.
Niektóre edytory wymagają od takiego pliku obecności znacznika BOM (Byte Order Mark - znacznik kolejności bajtów), inne wręcz przeciwnie go nie akceptują. Co za tym idzie dodają znacznik BOM lub nie.
W moim przypadku plik zakodowany w utf-8 z bom powodował błąd parsera php. Jeszcze nie wiedząc że Pajączek nie radzi sobie z tym problemem bezskutecznie zapisywałem wwszystkie pliki w utf-8 (znów i znów z naddzieją ze gdzieś się pomyliłem). Kodowanie bez BOM odkryłem dopiero w programie Notepad++. UTF-8 (bez BOM) jest działającym kodowaniem. Na pewno w Pajaczku da się to skonfigurować, ponieważ inne strony z sesjami zrobione wcześniej działają bez zarzutu.
http://pl.wikipedia.org/wiki/BOMPozdrawiam.
oomaster
14.04.2010, 20:46:24
Sorry ,że powracam do tego tematu po takim czasie ale problem jest nie do rozwiązania dla mnie. Pousuwałem wszelkie spacje próbowałem z BOM i bez BOM i to samo !
Kod
<?
ob_start();
session_start();
// Poł±cz się z serwerem bazy danych
$dbcnx = @mysql_connect('localhost', 'baza', 'xyz');
if (!$dbcnx) {
exit('<h1>Sorry</h1>' );
}
// Wybierz bazę danych
if (!@mysql_select_db('baza')) {
exit('<h1>Sorry</h1>');
}
?>
Pawel_W
14.04.2010, 20:51:10
yyy, na 99% to BOM, wiem z doświadczenia, ściągnij jakiś program do edycji takich plików, bo w notatniku o ile wiem nie ma opcji do zapisywania bez BOM
oomaster
14.04.2010, 20:53:08
Korzystam z notepad++ I kombinuje bez BOM i guzik :/
Pawel_W
14.04.2010, 20:54:33
to stwórz nowy plik, wklej do niego samo
<?php
?>
zapisz i powiedz, czy dalej jest błąd
oomaster
14.04.2010, 21:18:23
Cytat(Pawel_W @ 14.04.2010, 21:54:33 )

to stwórz nowy plik, wklej do niego samo
<?php
?>
zapisz i powiedz, czy dalej jest błąd
Nie wywala błędu. teraz do mojego kodu dodałem na początku <?php i wywala 1 błąd zamiast 2 ?!
EDIT: Znam rozwiązanie może komuś się przyda. Otóż plik baza.php był includowany do pliku index.php a co za tym idzie sam plik baza.php był w formacie UTF-8 bez BOM lecz index.php był w UTF-8 ale z BOM i to przez niego wywalało błąd.
Podsumowania: Obejrzyjcie wszystkie pliki które mają w jaki kol wiek sposób styczność w trakcie wykonywania kodu czyli include itd.
miccom
25.08.2010, 17:29:24
Mój problem jest nieco inny...
Zmieniłem kodowanie w notepad++ z ASCI na UTF-8 BEZ DOM, i problem z sesją zniknął, ale zamiast polskich znaków mam krzaki...
Jak temu zaradzić?
Przeedytowanie pliku na niewiele się zdało...
Proszę o pomoc.
minolone
25.08.2010, 19:47:19
Może brakuje ci w sekcji <HEAD></HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
być może że plik został źle przekonwertowany, wrzuć plik na jakiś hosting i sprawdzimy gdzie masz błąd.
miccom
25.08.2010, 19:53:15
Ok,
Problem wynikał z tego, że nie deklarowałem kodowania.
Już jest ok.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.