$type=$_POST['type']; //$type 只会是单值switch ($type) { case 1: //生成 sql 指令1 case 2: //条件生成 sql 指令2 //sql读数据 $a if($a){} //读出数据有就返回 没有就返回错误 die; break; case 3: xxxxxxx $b case 4: xxxxxxx $b if($b){} //读出数据有就返回 没有就返回错误 die; break; case 5: xxxxxxx $c case 6: xxxxxxx $c if($c){} //读出数据有就返回 没有就返回“此项为空” 这里不算错}
switch文を飛び出した後に下方向に実行させる方法
$type=$_POST['type'];//直接看类型获取对应数据 无需登录switch ($type){case 1: //sql读数据1 $acase 2: //sql读数据2 $a}if($a){} //读出数据有就返回 没有就返回错误 die;if($user){} //验证是否登录//登陆后才能依类型获取的数据switch ($type){case 3: xxxxxxx $bcase 4: xxxxxxx $b}if($b){} //读出数据有就返回 没有就返回错误 die;switch ($type){case 5: xxxxxxx $ccase 6: xxxxxxx $c}if($c){} //读出数据有就返回 没有就返回“此项为空” 这里不算错
今、状況があります
case 1 2 if$a xx else 111
case 3 4 if$b xx else 222
case 5 6 if$c xx else 333
type = 4 result 111
4 から。飛び出した後に$aを判定するのが本来の目的です
飛び出した後に対応する条件判定ができればいいのですが
もちろんifを3つネストすれば十分ですが、ということです。は毎回可能です あと1~2個無意味な判定があります
対応する条件判定のみを行う良い方法はありますか
ディスカッションへの返信(解決策)
$type=$_POST['type']; //$type 只会是单值switch ($type) { case 1: //生成 sql 指令1 case 2: //条件生成 sql 指令2 //sql读数据 $a if($a){} //读出数据有就返回 没有就返回错误 die; break; case 3: xxxxxxx $b case 4: xxxxxxx $b if($b){} //读出数据有就返回 没有就返回错误 die; break; case 5: xxxxxxx $c case 6: xxxxxxx $c if($c){} //读出数据有就返回 没有就返回“此项为空” 这里不算错}
ログイン後にコピーログイン後にコピー
$type=$_POST['type']; //$type 只会是单值switch ($type) { case 1: //生成 sql 指令1 case 2: //条件生成 sql 指令2 //sql读数据 $a if($a){} //读出数据有就返回 没有就返回错误 die; break; case 3: xxxxxxx $b case 4: xxxxxxx $b if($b){} //读出数据有就返回 没有就返回错误 die; break; case 5: xxxxxxx $c case 6: xxxxxxx $c if($c){} //读出数据有就返回 没有就返回“此项为空” 这里不算错}
$type=$_POST['type']; //$type 只会是单值switch ($type) { case 1: //生成 sql 指令1 case 2: //条件生成 sql 指令2 //sql读数据 $a if($a){} //读出数据有就返回 没有就返回错误 die; break; case 3: xxxxxxx $b case 4: xxxxxxx $b if($b){} //读出数据有就返回 没有就返回错误 die; break; case 5: xxxxxxx $c case 6: xxxxxxx $c if($c){} //读出数据有就返回 没有就返回“此项为空” 这里不算错}
試してみたところ
type=4の場合、$bの判定が行われますが、本来はデータが読み出されるはずですが、
他のものも試してみましたが、判定結果は常に条件を満たしていません。
1 2 は OK です
、1 2 はログインする必要はありませんin
if ($a){}
break;
if($user) を追加した後
ログインを判断する
その後、ケース 3
ケース 4
if( $b){1}else{2}
結果は常に 2 です
ルールを説明して実際のコードを投稿してください
switch ($type) { case 1: $sql = SQL语句 $a = = mysql_fetch_assoc($sql ); case 2: $sql = SQL语句 $a = = mysql_fetch_assoc($sql ); if($a){ $rep['code'] = 1; $rep['valid'] = $a; reponse($rep);}else{ $rep['code'] = 1008; $rep['error'] = 'Error parameters'; reponse($rep);} break; case 3: $sql = SQL语句 $b = mysql_fetch_assoc($sql ); case 4: $sql = SQL语句 $b = mysql_fetch_assoc($sql ); if($b){ $rep['code'] = 1; $rep['valid'] = $b; reponse($rep);}else{ $rep['code'] = 1008; $rep['error'] = 'Error parameters'; reponse($rep);} break; case 5: $sql = SQL语句 $b = mysql_fetch_assoc($sql ); case 6: $sql = SQL语句 $b = mysql_fetch_assoc($sql ); if($c){ $rep['code'] = 1; $rep['valid'] = $c; reponse($rep);} else{ $rep['code'] = 1008; $rep['error'] = 'Error parameters'; reponse($rep);}}
function reponse($rep){ echo json_encode($rep); die;}
switch ($type) { case 1: $sql = SQL语句 $a = = mysql_fetch_assoc($sql ); case 2: $sql = SQL语句 $a = = mysql_fetch_assoc($sql ); if($a){ $rep['code'] = 1; $rep['valid'] = $a; reponse($rep);}else{ $rep['code'] = 1008; $rep['error'] = 'Error parameters'; reponse($rep);} break; case 3: $sql = SQL语句 $b = mysql_fetch_assoc($sql ); case 4: $sql = SQL语句 $b = mysql_fetch_assoc($sql ); if($b){ $rep['code'] = 1; $rep['valid'] = $b; reponse($rep);}else{ $rep['code'] = 1008; $rep['error'] = 'Error parameters'; reponse($rep);} break; case 5: $sql = SQL语句 $b = mysql_fetch_assoc($sql ); case 6: $sql = SQL语句 $b = mysql_fetch_assoc($sql ); if($c){ $rep['code'] = 1; $rep['valid'] = $c; reponse($rep);} else{ $rep['code'] = 1008; $rep['error'] = 'Error parameters'; reponse($rep);}}
function reponse($rep){ echo json_encode($rep); die;}
Are you so $s ql = SQL ステートメント; $b = mysql_fetch_assoc( $sql ); これはクエリ結果を返すことができますか?
必ずfalseが返されます
$b = mysql_fetch_assoc(mysql_query($sql ));
では、ルールを説明して実際のコードを投稿してください
ログインが削除されているか、type = 3 4の場合、判定が一貫していないことを確認してください
その後、5 6が読み出される 使用後配列内の while ループは、5 つであっても 6 つであっても、すべて読み出されます。 。
つまり、while ループは case 内でラップされていません。 。 。
タイプ 1、2、3、4... どういう意味ですか?
ケース 3 とケース 4 の SQL 命令は同じですか?
switch ($type) { case 1: $sql = SQL语句 $a = = mysql_fetch_assoc($sql ); case 2: $sql = SQL语句 $a = = mysql_fetch_assoc($sql ); if($a){ $rep['code'] = 1; $rep['valid'] = $a; reponse($rep);}else{ $rep['code'] = 1008; $rep['error'] = 'Error parameters'; reponse($rep);} break; case 3: $sql = SQL语句 $b = mysql_fetch_assoc($sql ); case 4: $sql = SQL语句 $b = mysql_fetch_assoc($sql ); if($b){ $rep['code'] = 1; $rep['valid'] = $b; reponse($rep);}else{ $rep['code'] = 1008; $rep['error'] = 'Error parameters'; reponse($rep);} break; case 5: $sql = SQL语句 $b = mysql_fetch_assoc($sql ); case 6: $sql = SQL语句 $b = mysql_fetch_assoc($sql ); if($c){ $rep['code'] = 1; $rep['valid'] = $c; reponse($rep);} else{ $rep['code'] = 1008; $rep['error'] = 'Error parameters'; reponse($rep);}}
function reponse($rep){ echo json_encode($rep); die;}
これはクエリ結果を返すことができますか?
こうやってfalseを返さないといけませんね
結局1 2が読み出されてしまいました
ここにうっかり1, 2, 3, 4を書き忘れてしまいました
。
...それらはどういう意味ですか?
ケース 3 とケース 4 の SQL 命令は同じですか?
1はホームページ情報 2は詳細情報 ログイン不要 3は個人の基本情報 4は個人の実名情報 それぞれ異なり、同じテーブルの異なるフィールドを読み込むことができます
全て単一のデータです
5 はファンドログ 6 はポイントログ
while ループを使用して配列を読み出します
そうすると、このように書く必要があります
$b = mysql_fetch_assoc(mysql_query($sql ));
switch ($type) { case 1: $sql = SQL语句1 break; case 2: $sql = SQL语句2 break; case 3: $sql = SQL语句3 break; case 4: $sql = SQL语句4 break; case 5: $sql = SQL语句5 break; case 6: $sql = SQL语句6 break;}$a = = mysql_fetch_assoc($sql ); if($a){ $rep['code'] = 1; $rep['valid'] = $a; reponse($rep);}else{ $rep['code'] = 1008; $rep['error'] = 'Error parameters'; reponse($rep);}
これは問題ありませんが、小さな問題があります それは、成功するとデータが返されます
しかし、失敗した場合に返されるエラーメッセージは異なります。 また、空であると判断する必要がありますが、間違っているわけではありません
したがって、それを完全に理解するには、これが最善ではないと思います。いくつか調整したので全体的な動作は問題ありませんが、最適化できる部分はあるはずです
ちなみに、私の場合は実際に16件の関数を書くのはかなり面倒ですが、この方法で学びました。お二人とも
ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











多くの場合、キーワードと追跡パラメーターで散らかった長いURLは、訪問者を阻止できます。 URL短縮スクリプトはソリューションを提供し、ソーシャルメディアやその他のプラットフォームに最適な簡潔なリンクを作成します。 これらのスクリプトは、個々のWebサイトにとって価値があります

Laravelは、直感的なフラッシュメソッドを使用して、一時的なセッションデータの処理を簡素化します。これは、アプリケーション内に簡単なメッセージ、アラート、または通知を表示するのに最適です。 データは、デフォルトで次の要求のためにのみ持続します。 $リクエスト -

これは、LaravelバックエンドとのReactアプリケーションの構築に関するシリーズの2番目と最終部分です。シリーズの最初の部分では、基本的な製品上場アプリケーションのためにLaravelを使用してRESTFUL APIを作成しました。このチュートリアルでは、開発者になります

Laravelは簡潔なHTTP応答シミュレーション構文を提供し、HTTP相互作用テストを簡素化します。このアプローチは、テストシミュレーションをより直感的にしながら、コード冗長性を大幅に削減します。 基本的な実装は、さまざまな応答タイプのショートカットを提供します。 Illuminate \ support \ facades \ httpを使用します。 http :: fake([[ 'google.com' => 'hello world'、 'github.com' => ['foo' => 'bar']、 'forge.laravel.com' =>

PHPクライアントURL(CURL)拡張機能は、開発者にとって強力なツールであり、リモートサーバーやREST APIとのシームレスな対話を可能にします。尊敬されるマルチプロトコルファイル転送ライブラリであるLibcurlを活用することにより、PHP Curlは効率的なexecuを促進します

顧客の最も差し迫った問題にリアルタイムでインスタントソリューションを提供したいですか? ライブチャットを使用すると、顧客とのリアルタイムな会話を行い、すぐに問題を解決できます。それはあなたがあなたのカスタムにより速いサービスを提供することを可能にします

2025 PHP Landscape Surveyは、現在のPHP開発動向を調査しています。 開発者や企業に洞察を提供することを目的とした、フレームワークの使用、展開方法、および課題を調査します。 この調査では、現代のPHP Versioの成長が予想されています

この記事では、Laravel Webフレームワークの通知システムを検討します。 Laravelの通知システムを使用すると、さまざまなチャネルでユーザーに通知を送信できます。今日は、通知ovを送信する方法について説明します
