クエリとIF条件でいくつかの条件に関する出力を取得しようとしています。ちょうど知りたい、これは結果を達成するための正しい方法か、それとも良い方法ですか?次のスクリプトは正しく動作しません。私のPHPスクリプトが見れば、何をしようとしているのかがはっきりします。 Plsは同じことに私を助けます。PHP/MYSQLの条件のLOOPでエラーが発生しました
$query_slab1 = mysql_query("SELECT slab_range,sup_itempartno FROM quotation_items where tender_id='$tender_id' ");
if ($result_slab1 = mysql_fetch_array($query_slab1)){
if (($result_slab1['slab_range'] == "") && ($result_slab1['sup_itempartno'] == "")){
echo 'NO SLAB RANGE or NO PART NUMBER';
}
else if (($result_slab1['slab_range'] !== "") && ($result_slab1['sup_itempartno'] !== "")){
echo 'SLAB RANGE and PART NUMBER EXISTS';
}
else if (($result_slab1['slab_range'] == "") || ($result_slab1['sup_itempartno'] !== "")){
echo 'SLAB RANGE is NOT THERE and PART NUMBER EXISTS';
}
else if (($result_slab1['slab_range'] !== "") && ($result_slab1['sup_itempartno'] == "")){
echo 'SLAB RANGE EXISTS and PART NUMBER IS NOT THERE';
}
else {
echo 'NO ITEMS FOUND IN THE DB';
}
}
スラブの範囲または部品番号が存在するかどうかをチェックするだけです。どちらも存在していれば、別のエコーがあります。両方ともエコーが存在しない場合、またはエコーが存在するかどうか、エコーがありません。現在のところ、最初のレコードをチェックしています。どのように私はすべてのレコードをチェックし、それに応じてディスプレイを与えるためにここでforループまたはwhileループを追加します。
これは私が達成しようとしている予想される結果です。
=========================================
tender_id | slab_range | sub_itempartno
=========================================
15001 ABCDE
15001 1-2 AMKOI
15001 5-6 OUIPR
15004
15004 CVIOU
15005
15005
15005
15009
15009 8-9
15009 6-9
Result for 15001 is 'SLAB RANGE AND PART NUMBER EXISTS' since when i iterete through the rows i can find both slab_range and sub_itempartno ENTERED.
Result for 15004 is 'SLAB RANGE DOESNT EXIST AND PART NUMBER EXISTS' since when i iterete ethrough the rows i can find both slab_range empty or null and sub_itempartno ENTERED.
Result for 15005 is 'SLAB RANGE AND PART NUMBER DOES NOT EXIST' since when i iterete through the rows i can find both slab_range and sub_itempartno NOT ENTERED.
Result for 15009 is 'SLAB RANGE EXISTS AND PART NUMBER DOES NOT EXIST' since when i iterete through the rows i can find slab_range ENTERED and sub_itempartno NOT ENTERED.
3行目で 'if'を' while'に置き換えます。 – DerVO
tender_idが単一のエンティティ/レコードを識別している場合、 'if'文を' while'ループで置き換える必要はありません。 – VolkerK
"次のスクリプトは正しく実行されません" - "ちょうど知りたい、これは正しい方法です" _ほとんどの可能性は "いいえ"です。しかし、あなたはあなたが期待していることと実際に何が得られるかを説明しなければなりません。サンプルデータと、それぞれの予想される/受け取った結果は、このために役立ちます。 – VolkerK