ホームページ > バックエンド開発 > PHPチュートリアル > 残りポイントも残りわずかです! PHPデータベースクエリ、ユーザー情報検証

残りポイントも残りわずかです! PHPデータベースクエリ、ユーザー情報検証

WBOY
リリース: 2016-06-23 14:15:34
オリジナル
956 人が閲覧しました

PHP データベース MySQL

まず、コードを入力します
$username=$_POST["name"];
$password=$_POST["password"];
if($username&&$password)
{
if(strpos($username," ")!==false)echo "ユーザー名が不正です";
else
{
$con=mysql_connect("localhost","root","1");
mysql_select_db(" manage ",$con);
$sql="
select *
from user
where username='$username' およびpassword='$password'
";
$query = mysql_query($sql) または die(mysql_error( ) );
$row=mysql_num_rows($query);
/* var_dump($sql);
*/

'ログイン成功';ログインに失敗しました';
}
}
?>
理由はわかりませんが、$row の実行後に取得される値は 0 です。ただし、取得した $sql

を使用してデータベースで実行すると、 , 当然クエリはできますので、SQLクエリ以降の関数に問題があるのは明らかなのですが、書籍を持っていないのでアドバイスをお願いしたいです。


ディスカッションに返信(解決策)
英語のユーザー名を使用することをお勧めします

文字エンコーディングが一致しないため、mysql_query(set names utf8) を試してください

文字エンコーディングが一致しないため、mysql_query(set names utf8)

返信する前に完了しました、親愛なる、あなたは正しいです!

英語のユーザー名を使用することをお勧めします

英語の中国人の名前は何人ありますか?

データベースのエンコーディングは何ですか? クエリを実行する前に、mysql_query("set names utf8"); を追加してください。


データベースのエンコーディングは何ですか? クエリを実行する前に、mysql_query("set names utf8"); を追加してください。

そうです!

英語のユーザー名を使用することをお勧めします
英語の中国人の名前は何人ありますか?

アカウント名と彼の名前を分離し、彼の名前を 1 つのアカウント情報として使用します。

中国語の文字は、文字セットのエンコードの問題が発生しやすいです。

mysql_query("set names utf8"); と同様に、この処理が欠落しているので、そのような低レベルの間違いを犯すべきではありません。

文字エンコーディングが一致しません、mysql_query(set names utf8)

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート