2011-12-22 5 views
-1

PHP 파일을 동적으로 만들고 싶습니다. 정적 HTML 코드는 정상적으로 작동하지만 "window.location"명령이 포함 된 PHP 코드를 삽입하려는 경우 "if (isset())"조건을 충족시키지 않고 스크립트에서 직접 해당 페이지로 이동합니다.PHP - 어떻게 동적으로 파일을 만드시겠습니까?

아무튼 간단한 에코가 작동하지 않습니다. 이 문제를 어떻게 해결할 수 있습니까?

public function suche() 
{ 
    echo "if(isset(\$_POST['searchit'])) 
    { 
    \$suchbegriff = \$_POST['suchbegriff']; 

    \$anfangsbuchstabe = substr(\$suchbegriff, 0, 1); 

    <script type='text/javascript' language='Javascript'>window.location = '/".$anfangsbuchstabe."/".$suchbegriff.".php'</script> 
    }"; 
} 
+1

정확히 무엇을하려고합니까? 그리고 세상에서 어떻게 작동 할 것이라고 기대하십니까 ????? –

답변

3

나중에 다른 요청에서 호출/실행하려는 php 파일을 작성하는 경우 php가 PHP로 인식되는지 확인해야합니다. 이제는 텍스트 일뿐입니다. 나는 php 여는 태그와 닫는 태그를 추가 한

public function suche() 
{ 
    echo "<?php if(isset(\$_POST['searchit'])) 
    { 
    \$suchbegriff = \$_POST['suchbegriff']; 

    \$anfangsbuchstabe = substr(\$suchbegriff, 0, 1); 
    ?> 
    <script type='text/javascript' language='Javascript'>window.location = '/".$anfangsbuchstabe."/".$suchbegriff.".php'</script> 
<?php 
    } 
?>"; 
} 

참고 :

그래서 당신은 뭔가를해야합니다.

+0

@ jeroen..thanks man !! –

0

변수를 이스케이프하는 것을 잊었습니다. 붙여 넣은 PHP의 색상으로 볼 수 있듯이 변수가 실행됩니다.

또한, 나뿐만 아니라 눈치 무엇을, 당신은 당신의 코드를 보내고 echo를 걸 수있는 큰 따옴표 ( ")

에 대해 동일한을 \로 탈출하고, 할

. PHP 코드를 echo하면 실제로 코드가 실행되지 않습니다.

eval으로 PHP 코드를 실행할 수 있지만 VERY UNSAFE입니다. 귀하의 질문에서 볼 수 있듯이 모든 보안 위험을 고려할만큼 충분한 경험이 없습니다. 사용하지 마십시오.

관련 문제