ホームページ >バックエンド開発 >PHPチュートリアル >PHP でデータを渡すときに奇妙な問題が発生しました。タイトルは長くする必要があると聞きました

PHP でデータを渡すときに奇妙な問題が発生しました。タイトルは長くする必要があると聞きました

WBOY
WBOYオリジナル
2016-06-13 13:28:16839ブラウズ

PHP でデータを渡すときに奇妙な問題が発生しました。タイトルは長くないといけないと聞きました!
HTMLで定義されているテキストボックスは以下のとおりです↓


フォーム ボタンが送信されると、背景は以下を受け入れます: ↓


$num0 = (string)$_POST[ "my_test"];
$num1 = (int)$_POST["my_test"];
$num2 = intval($_POST["my_test"]);
$num3 = $num0*1;
echo $num0 ;
echo $num1;
echo $num2;
echo $num3;

実行後の出力は次のとおりです:
1 0 0 0

強制タイプ設定を 1 に変更すると、すべてがデフォルトで 0 になるのはなぜですか? ? ? ? ? ?答えを求める

-----解決策---------
1111

テストの結果、ご指摘の問題は見つかりませんでした。
-----解決策---------
LZ のエンコードが正しいかどうかはわかりませんUTF-8 、可能であれば、BOM に関連しています。
------解決策------------------
これは幅が広いので完全なコードを送信してください。そして落とすこともできる。
------解決策------------------
utf-8で試してみましたが、うまくいきましたそれらはすべて 1 です。 。
------解決策------------------
試してみましたが、問題は見つかりませんでした。 。 。
------解決策---------
私もあなたの問題に遭遇しました。値が 1 の場合、intval() と (int)$var を使用して変数の型を変換すると、1 が 0 に置き換えられてしまうのは非常に不思議な気がします。これはとても奇妙な質問です!たぶん、エンコーディングに関係があるのでしょう。当時のエンコーディングは utf-8 だったので、gbk でこの問題が発生するかどうかはわかりません。

解決してください! ! ! ! ! ! ! ! !
------解決策---------
if($_GET["type"]) {

コードビハインドで型を渡していないことがわかります。出力.$num2 は num2 ではありません...

そして、addslashes がフィルタリングしたいのは文字列です。与えられたのは配列です..

if($_GET["type"]){
$num1 = (int)$_POST["my_test1"];
$num2 = (int )$_POST["my_test2"];
echo $num1."-".$num2 ;
}
?>







がありますこのコードが出力でまだ間違っている場合は、このコードに問題はありません。PHP のバージョンは何ですか?

------解決策---------

C/C++ コード
if(!get_magic_quotes_gpc()){
ラッシュを追加($_POST);
ラッシュを追加($_GET);
}
if($_GET["タイプ"]){
$num1 = (int)$_GET["my_test1"];
$num2 = (int)$_GET["my_test2"];
echo $num1."-".num2;
}
<br><font color="#e78608">------解決策---------</font><br>間違いがたくさんあります。 <br>配列をエンコードするコードに次のように記述できます: <br>$n1=3;<br>$n2=5;<br>echo $n1.'_'.$n2;<br>ほら、結果は 3_5 になるはずです;<br> 型変換の問題については、私の個人的な推測では、以前に本で言及されているのを見たことがあります。変換された各型を var_dump することをお勧めします。 <br><div class="clear"></div>
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。