저는 처녀 (처음)이므로 천천히 입력하십시오.PHP가 setcookie에 실패했습니다
페이지가 새로 고침 될 때마다 회전 할 이미지 수 bg_001.jpg, bg_002.jpg 등이 있습니다. 나는 이기에, setcookie있는 행 되
Warning: Cannot modify header information - headers already sent by (output
started at /home2/.../about.php:7) in /home2/.../about.php on line 31
라인 (31)을 얻을 대신 쿠키의
if (isset($_COOKIE["bg1"])) {
$img_no = $_COOKIE["bg1"] + 1;
} else {
$img_no = 1;
}
$filename = 'bg_' . sprintf("%03d", $img_no) . '.jpg';
if (!file_exists("/img/" . $filename)) {
$img_no = 1;
$filename = 'bg_' . sprintf("%03d", $img_no) . '.jpg';
}
setcookie("bg1", $img_no, time() + 86400);
print '<img src="img/' . $filename . '" alt="" height="175" width="800"> ';
: 나는 이것을 시도했다. 이미 유니 코드의 BOM에 문제가있는 PHP에 대한 포인터를 찾았지만 문제를 해결하는 방법을 알지 못합니다 (처음에는 문제가있는 경우). 공식적으로 사용하려면 (그리고 "진짜 질문이 아님"을 피하십시오.) 어떻게 수정해야합니까? :-)
제 코드에 대한 건설적인 비판도 환영합니다.
는 에필로그 :
는 일반적인 초보자의 오류처럼 보였다 : 십오분 내에서 동일한 솔루션을 향해 몇 가지 답변을. 고마워. guyz/galz.
그래서 인쇄을 제외한 모든 부분을 파일의 시작 부분으로 옮겼습니다. 실제로는 수정되었습니다.
모든 사람의 머리글 우선 순위에 추가하려면 해당 페이지에서 7 번 줄을 확인하십시오. 그것이 출력 범인입니다. – Galen
라인 7? ''와 같이 ?? – stevenvh
솔직히 "7"이 줄 번호를 참조한다고는 생각하지 못했습니다. (다른 오류/경고 코드는 무엇입니까?) 같은 메시지에서 줄 번호를 나타내는 데 두 가지 다른 방법을 사용하는 이유는 무엇입니까? "... php : 7"대 "... php on line 31" – stevenvh