2011-09-19 4 views
0

나는 다음과 같은 구조로 구성된 PHP 파일이 : 가끔 파일이 그냥도 View Source 확인하는 경우 (화면에로드 것이 무엇 v=1 경우 예를 들어, 절반로드 PHP 파일이 제대로

<html>... headers, scripts & styling 
... some html here 
<?php 
    if($_GET['v'] == 1) 
    { 
?> 
    ... html code here ... 
<?php 
    } 
    else 
    { 
?> 
    ... html code here ... 
<?php 
    } 
?> 
</html> 

당신이 볼 수 있듯이

<html>... headers, scripts & styling 
... some html here 
    ... html cod 

이 코드 그냥 무작위로 차단) 내가 위에서 exampled 무엇을 (기준 :)이 같은 것입니다. 루프 나 그 밖의 어떤 것도 명백한 것은 아닙니다. HTML 코드 중간에 발생하며 <?php ?> 태그 내부에는 발생하지 않습니다.

마치 서버가 아무 이유없이 바로 통신을 중지하기로 결정한 것처럼 보입니다. 그것은 매번 다른 장소와 무작위로 발생하며 때로는 완벽하게 잘로드됩니다.

내 공유 호스팅 계정에서만 발생하며 내 localhost에는 발생하지 않습니다.

이 원인이 될만한 요소가 있습니까? 이전에 경험 한 사람이 있습니까?

+0

링크를 공유하여 Google의 브라우저에서 테스트하고 패킷 캡처 도구를 실행할 수 있습니까? – phihag

+0

아니요, 죄송합니다 - 웹 앱의 제어판에 있습니다. – LouwHopley

+0

그런 다음 [wireshark] (http://wireshark.org)와 같은 pcap 덤프를 만들어 업로드 할 수 있습니까? – phihag

답변

2

이 코드는 경고 (분명히 침묵)을 생산하고 여기에 실패 : 더 v 매개 변수가 쿼리 문자열에 주어진되지 않았다

if($_GET['v'] == 1) 

합니다.

이처럼 수행

if(isset($_GET['v']) && $_GET['v'] == 1) 

당신이 두 가지 조건 각각에 대해 if 문이 별도의 확인해야합니다 PHP의 이전 버전을 실행하는 경우.

+0

아니요, 침묵 오류가있는 경우 다른 곳으로 이동합니다 – genesis

+0

그래도 오류보고 구성에 따라 다르다고 생각합니다. – thwd

+1

번호. 오류가 사라지면 그것은 억제되지만 여전히 작동합니다. 그것은 단지 경고/경고이고 스크립트는 멈추지 않습니다. – genesis

2

display_errors이 켜져 있는지 확인하십시오.

ini_set('display_errors',1); 

끔찍한 잘못은 없습니다.

+0

빨리 고맙습니다. – LouwHopley

+0

Ag 남자. 이제는 더 이상 그 문제를주지 않습니다. 클라이언트가 그것을 사용할 때 일어나는 것을 두려워합니다. – LouwHopley

+0

정상입니다. 오류가있는 경우 display_errors를 비활성화하면 코드 실행이 중단됩니다. 또한 생성 된 시각적 출력을 보는 대신 코드 소스를 확인해야합니다. 경우에 따라 브라우저에 따라 오류가 표시되지 않을 수도 있습니다. –

관련 문제