私は、ユーザ名、番号、およびキャリアをuser
というテーブルに格納するデータベースを持っています。シンプルなPHP/mySQLクエリですか?
私の値がname
に等しい場合、その名前に関連付けられた番号とキャリアを取得するクエリを書く方法を知る必要があります。私はPHPでこれを書いており、必要に応じてJavaScriptを使用します。
私は、ユーザ名、番号、およびキャリアをuser
というテーブルに格納するデータベースを持っています。シンプルなPHP/mySQLクエリですか?
私の値がname
に等しい場合、その名前に関連付けられた番号とキャリアを取得するクエリを書く方法を知る必要があります。私はPHPでこれを書いており、必要に応じてJavaScriptを使用します。
私はあなたが使用することを好むべきだ「ユーザーSELECT * FROM WHERE名LIKE 『{$値}』」 例えば、正確な値 を検索します=を使用した理由は次のとおりです。データベースに値がジョンで、uは検索した場合あなただけの1を置くことができるメガ
あなたのSQLクエリは次のようになります。
"SELECT * FROM user WHERE name = '{$value}'"
これは、テーブル内のすべての列を選択name
列はPHP変数の値を持つuser
$value
あなたは使用して、このクエリPHPのを実行することができますMySQL関数:http://php.net/manual/en/book.mysql.php
例
$value = "John";
$result = mysql_query("SELECT * FROM user WHERE name = '{$value}'");
while($row = mysql_fetch_array($result))
print("Column with name columnName has a value of " . $row['columnName']);
-1あなたが記述したようなSQL文字列を構築するときに、少なくともSQLインジェクションの危険性について言及していないからです。また、間違ったリンクを投稿したと思います。 –
リンクを修正しました。データベースアプリケーション開発者がセキュリティ(SQLインジェクション、ディレクトリトラバーサル、HTMLインジェクション、XSSなど)を知る必要があるすべてのチュートリアルを投稿した場合、それぞれの回答は非常に複雑になり、それを理解しないだろう。 – ShaneC
エスケープすると言っても、あなたの答えはあまり複雑になりません。 –
はジョンのために、それは結果を表示しませんが、あなたはあなたに感謝、それはJOHN、ジョン、ジョン、ジョンなどのような、関連するすべての結果が表示されます
LIKEを使用する場合、 以下:
1)
$value = "John";
$result = mysql_query("SELECT * FROM user WHERE name LIKE '$value'");
上記のクエリは、Meghaが提案したJOHN、john、Johnなどの名前に一致する行を返します。クエリ上記
2)
$value = "John";
$result = mysql_query("SELECT * FROM user WHERE name='$value'");
値 'ジョン' と名前を一致する行を返します。
ようこそ。試した質問を投稿してください。なぜなら、あなたが聞いたことは率直に言えば、WHERE句を含むきわめて基本的なSQLクエリです。 –
テーブルの構造は何ですか?今まで何を試してみましたか? – DhruvPathak