문제

의 끝에서 페이지 뭔가가 발생하면,그것은 삭제해야,그런 다음 전체 페이지 필요하시기 전에 구문 분석 제공하는 클라이언트입니다.내가 가고 있었 echo 밖으로 자바 스크립트 페이지를 새로 고쳐지만,그들에게 그들로드 페이지 및 다른다는 궁금하는 방법이 있다면 말이 php 엔진을 시작으로 돌아와 다시 구문 분석하는 전체 페이지?

감사합니다!

나는 것입니다 문제를 설명하려고 더 명확하게 하지만 그것은 복잡하고 나는 끔찍한 커뮤니케이터입니다.나는 페이지에서 제품을 나열하는 나는 사용자의 옵션을 선택하려면 필드를 좁혀 결과입니다.시스템 기억이 없을지 선택한다.는 경우 그들은 좁은 범주 금속과 같은 색상과 다음으로 이동하는 종류의 금속 컬러는 관련이 없는 다음과 같 크리스탈 인형을 표시되지 않습니다 어떤 결과가 없기 때문이 일치합 금속 색상을 선택합니다.를 생성하는 쿼리를 당겨하는 제품에서 데이터베이스는 매우 복잡하기 때문에 서로 다른 범주에는 다른 요구 사항을 찾는 올바른 제품입니다.그래서면 쿼리가 생성되 내가 원하는 테스트는 그것에 대해 mysql_num_rows()및 없는 경우에 결과를 취소 사용자 선택이고 다시 시작합니다.

도움이 되었습니까?

해결책

쿼리를 생성하는 것은 데이터 기반에서 제품을 가져 오는 제품을 생성하는 것은 매우 복잡합니다. 왜냐하면 범주마다 올바른 제품을 찾기위한 요구 사항이 다르기 때문입니다. 그래서 쿼리가 생성되면 테스트하고 싶습니다. mysql_num_rows() 결과가 없으면 사용자 선택을 명확하게하고 다시 시작하십시오.

이 경우 결과를 반환하는 함수 안에 쿼리를 넣고 행 계산을 확인하고 필터가 0을 지우고 그 기능을 두 번째로 호출하십시오.

다른 팁

당신은 조금 모호하지만, 단지 출력을 재구성하는 것에 대해 이야기한다면, 당신은 출력 버퍼링.

나는 문제가 무엇인지 완전히 명확하지 않지만 HTML을 만들기 전에 무엇을 보여줄 것을 결정한 다음, 처음으로 올바른 것을 보내지 못했습니까?

출력 버퍼링 (OB_START 및 OB_CLEAN)은 당면한 기능을 별도의 파일로 분리하고 트릭을 수행 해야하는 Eval () ''ing.

아, 그리고 최근의 PHP 버전에는 실제로 a가 있습니다 이동 진술 ... 나는 항상 그것에 대해 언급하는 것을 거부 할 것입니다. :-)

나는 당신이 그것에 대해 조금 떨어져.

당신이해야 할석하는 페이지로 리디렉션하는 사용자가 페이지에 다시 사용하여,

header('Location: thepagefile.php');

그러나 만약 당신이 실제로 다음과 같석하지 않고 파일을 새로 만드는 페이지로,당신은 또한 단지 포함한 파일이 다시:

함 thepagefile.php

하지만 당신은 아마도 같은 결과를 얻을.하려는 경우 실제로 구문 분석 출력 페이지 당신이 뭔가를 할 것:

ob_start(); // this is at the very top of the code/page
// all the code goes here
$output = ob_get_clean();
eval($output); // WTF?

하지만 실제로 의미가 없지만,내가 도움이 되기를 바랍니다.

나는 다음과 같이 실제로 무엇을 알고 실제 문제를 해결하려는 정말입니다.

나는 당신이 다음과 같은 것을 찾고 있다고 생각합니다.

<?php
ob_start(); //we start output buffering, this means nothing is send to the browser
//We do some code stuff
$time = microtime();
echo "Hai \n"; //Note taht mixing logic and output in real life
echo $time;  // is terribly practice
echo "\n bai"; //I do it here purely for the example
if(/*some condition */){
 $anErrorHappened = true;
}
if($anEroorHappened === true){
  //Load the output in a var if you need it
  //Otherwise don't
  $output = ob_get_clean();
  //Do other code stuff
  //I.E. send an error page
  include('errorPage.html');
}
else{
 ob_end_flush(); //Send everything the script has echo()'d, print()'ed and send to the browser in any other way (I.E. readfile(), header() etc.)
}
?>
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top