2017-03-07 4 views
0

私はhtmlのデータから次のようにjqueryを使って数値を取得しています。PHP /文字列として数値をポストすると、intvalは数値に変換できません

これはhtml行です。

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

私は( 'この' ですボタンを押した後)

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

...これではjQueryを使用してデータを取得します。これは正しく動作し、アラートによって番号が表示されます。

私は、いつもの...

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

と私のPHPスクリプトに投稿し、私はそれを集めます。

$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()は引数を1つとります。整数であれば、印刷するのではなく、終了状態コードとして使用します。 exit()作品がここにPHPのドキュメントで見つけることができる方法についての

詳細情報: - http://php.net/manual/en/function.exit.php

関連する問題