お世話になっています。
現在PHPにてポイントサイトの製作をしているのですがどうも一箇所正しく動作がしない場所がありご質問させて頂きました。
CSVでデータをアップし「承認」「非承認」でデータを反映させたいのですが・・・
※$aspInfo['para_status']・・・CSVで成果ステータスの行を指定
※aspInfo['status_ok']・・・"承認"する条件(ここでは"承認"という文字列)
※$getStatus・・・CSVでのステータス
//成果ステータス
$getStatus= $recArray[ $aspInfo['para_status'] - 1 ];
//print $getStatus;
if( $aspInfo['status_ok'] == $getStatus){
$getStatus = "2";
}else{
$getStatus = "9";
}
予め決めておいた「$aspInfo['status_ok']」の値とCSVの中に含まれる「$getStatus」が一致した場合$getStatus = "2"、
一致しない場合$getStatus = "9"としてデータを反映させたいのですが・・・
実際$aspInfo['status_ok']を"承認"という文字列で指定して"否認"というCSVステータスをアップするとなぜかtrueで「2」が返されます。
ここをどうにか「"承認"以外の場合$getStatus = "9"」 として返したいのですが原因が分かりません。
皆さんからのアドバイス頂けたら嬉しい限りです。
よろしくお願い致します。
No.3ベストアンサー
- 回答日時:
if( $aspInfo['status_ok'] == $getStatus){
var_dump($aspInfo['status_ok']);
var_dump($getStatus);
echo bin2hex($aspInfo['status_ok']);
echo bin2hex($getStatus);
}
とか色々やっても全部一致しますか?
if( $aspInfo['status_ok'] == $getStatus) {
の比較が = だったとか。
$getStatus を比較した直後に $getStatus に別物を代入していますが
近辺で誤って上書きしているとか。
No.2
- 回答日時:
>$getStatus = $recArray[ $aspInfo['para_status'] - 1 ];
>//print $getStatus;
>if( $aspInfo['status_ok'] == $getStatus){
(snip)
$aspInfo['status_ok']と$getStatusを同時に書き出して確認してみてはいかがでしょう。
意外なところで変数汚染があるかもしれません。
>※aspInfo['status_ok']・・・"承認"する条件(ここでは"承認"という文字列)
これが定義なのだとしたらdefineした方が安全かと思います。
ちなみに
if("承認"=="否認")
$aa=1;
else
$aa=2;
としてみましたが、文字コードsjis,euc,utf-8いずれも$aa=2となりましたよ。
// まぁ当然ですけど。
やはり承認と否認はそれぞれ別のものとして扱われているのですね・・・。
まだなぜすべてtrueで振り分けられてしまうのか不明な状況です・・・。
回答ありがとうございました!
No.1
- 回答日時:
if ( strcmp($aspInfo['status_ok'],$getStatus) == 0 ){
$getStatus = "2";
}else{
$getStatus = "9";
}
でどうでしょうか
参考URL:http://logic.stepserver.jp/memo.cgi/archive/506/
早速ありがとうございました。
上記のPHPに書き換えて試したところPHPが実行されなくなってしまいました・・・。
まだ原因は不明ですがいろいろ試してみたいと思います!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) データ解析ソフトRでのファイル入力read.csvがエラーになります 7 2022/03/27 22:11
- 医療・安全 塩野義製薬の新型コロナ治療薬「ゾコーバ」の緊急承認見送り 7 2022/07/22 00:45
- 医療・安全 マスクしつづける方は 緊急事態条項・パンデミック条約について どう捉えていますか? 8 2023/03/18 20:27
- メディア・マスコミ マスクしつづける方は 緊急事態条項・パンデミック条約について どう捉えていますか? 2 2023/03/21 11:44
- JavaScript JavaScript?jQuery?で書き方を教えてください。 初心者です。 AAAという要素をステ 2 2023/08/04 22:09
- Excel(エクセル) CSVファイルがカンマ区切りにならない。対処法を教えていただきたいです。 仕事でSMS一斉送信ができ 2 2022/07/01 21:24
- Excel(エクセル) PowerQueryに詳しい方教えてください(Office365) 1 2022/07/24 21:11
- Visual Basic(VBA) マクロを教えてください。 7 2023/06/01 19:47
- Visual Basic(VBA) データベースから絞り込んでデータを読み込み 1 2023/02/21 19:51
- Access(アクセス) CSVファイルの「0落ち」にVBA 6 2023/02/02 15:27
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Dosブロンプトでtabを出力したい
-
switch()文で値の大小比較
-
バッチファイルで、全てのウィ...
-
バッチファイルでpingの結果を...
-
PHPで訪問回数を表示するカウン...
-
phpでcookieがうまく保存されない
-
findstrのerrorlevel
-
syntax error, unexpected 'ech...
-
データベースから出力したデー...
-
画像の削除
-
is_numericの使い方についての...
-
PHP、初心者なのですが
-
ゼロとNULLを区別して number_f...
-
pdftkを使った処理をバッチファ...
-
シェルで正規表現 YYYY/MM/DD
-
WindowsのイベントログをExcel...
-
shシェルスクリプト 空白行の...
-
ifのなかを実行したいのですが...
-
連想配列からテーブルを作成す...
-
小数点以下0の非表示
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Dosブロンプトでtabを出力したい
-
switch()文で値の大小比較
-
phpでcookieがうまく保存されない
-
バッチファイルでpingの結果を...
-
shシェルスクリプト 空白行の...
-
syntax error, unexpected 'ech...
-
findstrのerrorlevel
-
バッチファイルで、全てのウィ...
-
PHPで訪問回数を表示するカウン...
-
PHP一覧表示した項目にリンクを...
-
DBのハッシュ化したパスワード...
-
小数点以下0の非表示
-
Windowsのsetコマンドでの小数...
-
オブジェクトの中身の判定(PHP)
-
PHPでのパスワード制限のセキュ...
-
bashの関数の引数にスペースが...
-
RSSにdiv,ul classを付けたいの...
-
pdftkを使った処理をバッチファ...
-
ゼロとNULLを区別して number_f...
-
コマンドプロンプト フォルダ内...
おすすめ情報