0

こんにちは皆さん、これは私の最初の投稿です。このフォーラムにも同様の質問がありますが、私の質問に正確に答える質問が見つからなかったか、少なくとも答えを出すのに十分な関連性がありませんでした。これは私の3日目です。 PHPを使用しているので、まだ慣れています。

私は自分のサイト用に小さなゲームを作っています。ユーザーは小額のお金を払って賞品を獲得できます。賞品はメールで送信されるコードです。

現在、データベースとスクリプトを設定しているので、ブール値Availableを使用して同じコードを2回発行することはできません。これは、コードが発行されていない場合は1に設定され、発行されている場合は0に設定されます。

私は私のコードテーブルをそのように設定しています

CodeID | ItemID | CodeType | Available | Code             |

1      | 1      | xxxxxxx  | 1         | QLLxbttKQcHv4e4k |
2      | 1      | xxxxxxx  | 1         | 6JKMumiH35Dke4SS |
3      | 3      | xxxxxxx  | 0         | mQ2WyUjqNy5fJiEr |

私がやりたいのは、各コードをチェックして、それが利用可能かどうかを確認することです。ItemIDを取得して、別のページで使用できる$ _SESSIONS配列に入れて、ストックしたコードの結果のみを返す場合は、

コードが利用可能かどうか、およびItemIDが$_SESSIONS配列に配置されているかどうかを確認するのに問題があります

現在、データベースをクエリするためにこれを持っています

$stock = $conn -> query('SELECT * FROM codes WHERE Available = 1');

これにより、データベースがチェックされ、重複するItemIDを含め、現在利用可能なすべてのコードが出力されます。

誰かが私を助けて、各ItemIDを1つだけ取得し、それを$ _SESSIONS配列に入れて、次のページで使用可能なコードの結果のみを表示できるようにすることはできますか?

4

1 に答える 1

1

このクエリ

SELECT DISTINCT ItemID FROM codes WHERE Available = 1

ItemID利用可能な一意ののみが返されます

PS:必要な特定の列のみを選択することを好みます。*

于 2013-03-13T22:02:03.530 に答える