2017-03-07 1 views
0

다음과 같이 html의 데이터에서 jquery를 사용하여 숫자를 가져옵니다.PHP/문자열을 숫자로 게시, intval은 숫자로 변환 할 수 없습니다.

이것은 html 행입니다.

echo "<p class = 'bold center remainingland' data-RemainingLandForFacilities = $RemainingLandForFacilities>Remaining Land For New Facilities : " . ($RemainingLandForFacilities) . "</p>"; 

는 I ...이 jQuery를 사용하여 데이터를 얻을

var remainingland = $(this).closest('div').find('.remainingland').attr('data-RemainingLandForFacilities'); 

('이'인 버튼을 누른 후). 이것은 올바르게 작동하고 경보가 나에게 숫자를 보여줍니다.

난 후 ... 보통 내 PHP 스크립트에

$.post('scripts/upgradefacility.php', 
      { 
       remainingland : remainingland 

을 게시 그리고 나는 그것을 수집합니다.

$RemainingLand = filter_input(INPUT_POST, 'remainingland', FILTER_SANITIZE_STRING); 

이 시점에서 숫자가 있지만 문자열 (gettype에 의해 확인 됨)입니다. 하지만 정수로 변환하려고 할 때 ...

$RemainingLand = intval($RemainingLand); 

그냥 빈 칸으로 표시됩니다. 나는 내가 지나가고있는 이전 변수들로부터이 모든 것을 복사/붙여 넣었다는 것을 지적해야한다.이 모든 것은 올바르게 전달 되었기 때문에 이것은 정말로 이상하다. 나는 내가 발견 할 수없는 오류를 만들었다 고 생각할 수도 있고, 내가 잘못을 저질렀다고 생각할 수도있다. 그러나 나는 지금까지 그것을 어떻게 든 해냈다.

+0

는 "빈"은 무엇입니까 ? – Steeve

+1

intval은 공백을 반환하지 않습니다. 항상 int를 반환하지만 문자열을 int로 만들 수없는 경우 기본값은 0입니다. 나는 당신의 결과가 엉망이되고 있다고 생각합니다. http://php.net/manual/en/function.intval.php –

+0

결과를 die ($ result)로 출력 한 다음 내 js와 함께 console.log에 넣습니다. 나는 그냥 비어 있습니다. 만약 내가 intval 라인을하지 않는다면, 나는 숫자를 얻고있다. (아마 나의 js에 도착했을 때 여전히 문자열로 생각할 것이다.) – Farflame

답변

1

intval()이 데이터를 정수로 변환하지 못하는 것이 아니라면 문제가 exit()으로 반환됩니다.

exit()은 하나의 인수를 취합니다. 정수가 아니라 인쇄하는 경우 종료 상태 코드로 사용합니다. 방법 exit() 작품에

자세한 내용은 여기 PHP 문서에서 찾을 수 있습니다 : - http://php.net/manual/en/function.exit.php