php
2012-07-16 4 views 0 likes 
0

안녕하세요, 한 파일에서 URL을 통해 다른 파일로 값을 전달하려고합니다. 결국 <a href='fund_view.php?idfund="<? echo $row['idfund']; ?>"'>PHP에서 URL을 통해 변수를 전달하는 방법

내가 다른 파일에 올바른 값이

$aidi = $_GET['idfund']; 

echo 'ID= '.$aidi;` 

사용하여 얻을하지만 난이 얻을 결과가 난 후이 형식 ID= \"10\"

URL입니다 :

내가 할 방법은 이드를 지나치는 것처럼 보임

http://example.com/fund_view.php?idfund="10" 

이고 내가 원하는 결과는 ID="10"입니다.

+2

에 제공된 기능 앵커 '> – Waygood

+1

그가 보여 주었 듯이, 그는 따옴표가 필요합니다. – Peon

+0

querystring을 통해 변수를 전달하려는 경우'urlencode() '또는 비슷한 것을 사용하는 것이 더 안전합니다. –

답변

2

변경

<a href='fund_view.php?idfund="<? echo $row['idfund']; ?>"'> 

또한 코드가 매우 안전하지 않은 염두에 두어야

<a href='fund_view.php?idfund=<? echo $row['idfund']; ?>'> 

에 ... 적어도 그것을 사용하기 전에 int로 매개 변수를 캐스트 :

$aidi = (integer) $_GET['idfund']; 
+0

왜 하향 형입니까? –

+0

int-casting을 수행하는 것은 실제로 int임을 가정합니다. 담요를 "int로 바꾸어야 만합니다"라는 보안을 언급하는 것은 괜찮습니다. –

+0

필드/매개 변수/열/명명 된 ID _ 정수일 수 –

2

magic_quotes을 php.ini에서 끄고 그 백 슬래시를 제거해야합니다.

0

이전 버전의 PHP (5.4 이하)에는 "magic quotes"이라는 매우 반 직관적 인 기능이 있습니다. cally는 (그리고 자동으로) 모든 GET/POST 문자열을 마치 MySQL 쿼리에서 사용되는 것처럼 이스케이프 처리합니다.

역순으로 처리하는 것이 상대적으로 간단하며, 그러한 기능이 있는지 모를 때는 두통이 생깁니다.

해결 방법 1 : 다음은 내가 사용했던 최고의 다음 (휴대용) 솔루션입니다 그래서 ini_set

와의 magic_quotes를 끄고 때때로 당신은 (제한 호스트 공급자)를 위해서는 ini_set 사용할 수 없습니다 :

NB 다음 get_magic_quotes_gpc 기능 페이지

<?php 
    function stripslashes_deep(&$value) 
    { 
     $value = is_array($value) ? 
        array_map('stripslashes_deep', $value) : 
        stripslashes($value); 

     return $value; 
    } 

    if (get_magic_quotes_gpc()) 
    { 
     stripslashes_deep($_GET); 
     stripslashes_deep($_POST); 
    } 

?> 
관련 문제