プログラム初心者です
$nameと$mailをDBに登録してあるか調べたいのですが
sqlを一回だけ発行で調べる方法はありますか?
//名前とメールを取得して重複チェック
$name2 = mysqli_query($link,sprintf('SELECT name FROM table WHERE name="%s"',
mysqli_real_escape_string($link,$name)
));
$data = mysqli_fetch_assoc($name2);
if(isset($data['name'])==$name){
throw new Exception('noname');
}
$name3 = mysqli_query($link,sprintf('SELECT mail FROM table WHERE mail="%s"',
mysqli_real_escape_string($link,$mail)
));
$data2 = mysqli_fetch_assoc($name3);
if(isset($data2['mail'])==$mail){
throw new Exception('nomail');
}
よろしくお願いします
No.1ベストアンサー
- 回答日時:
提示されたコードにおかしい点が含まれているのでそれも直しつつ1つにまとめました。
$result = mysqli_query($link, sprintf(
'SELECT name, mail FROM table WHERE name="%s" OR mail="%s"',
mysqli_real_escape_string($link, $name),
mysqli_real_escape_string($link, $mail)
));
while ($row = mysqli_fetch_assoc($result)) {
if ($name === $row['name'] && $mail === $row['mail']) {
throw new Exception('その名前とメールアドレスは既に登録されています');
} elseif ($name === $row['name']) {
throw new Exception('その名前は既に登録されています');
} elseif ($mail === $row['mail']) {
throw new Exception('そのメールアドレスは既に登録されています');
}
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHP MySQLに画像を直接保存 2 2022/06/05 11:50
- PHP 重複を防ぐ記述について教えて下さい。 3 2023/04/03 14:35
- PHP PHPでMysqlにデータがあるかどうか判別したい 1 2023/03/02 11:48
- PHP if(preg_match("/[^0-9]/",$gu_d)){意味を教えてください。 1 2022/05/06 05:37
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- MySQL php テーブルを作れない 2 2022/11/17 18:22
- PHP php テーブルが作成できない 1 2022/11/17 23:41
- PHP PHP MySql 画像を取得 1 2022/06/04 14:05
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- PHP ここでの ②if($su_d<>"")の比較演算子 を使う理由は 1 2022/03/26 02:33
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SQLインジェンクション対策法を...
-
このプログラムの改善点を教え...
-
PHP+MySQLの「データ...
-
functionとclassの使い分け
-
phpで読み込んだcsvが文字化け...
-
パラメータを2個つけたい
-
連想配列について
-
phpで変数を使ってcopyできない
-
C# 同じ処理をまとめたい
-
Fortranでのファイル名操作につ...
-
PHPで作成した2つのプログラム...
-
JSONデータ登録について
-
PHPの改変について
-
phpでランダムにページを表示
-
初心者です。入力フォームのp...
-
引数と変数について
-
HTMLで前の画面に戻る時、入力...
-
<input type="hidden" >で配列...
-
PHPでURLにジャンプするには?
-
コンボボックス(プルダウン)...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA で、スペースを含むファイ...
-
ファイル名を変更してアップロ...
-
アップロードファイル名の文字化け
-
PHPからHTMLへの変数の受け...
-
プログラミングC++のmapについて
-
phpで変数を使ってcopyできない
-
Flaskでサーバー立ち上げに関して
-
POSTの項目に追加
-
SQLインジェンクション対策法を...
-
パラメータを2個つけたい
-
サブフォルダ内の全てのテキス...
-
フォームで送られてきたメール...
-
PHP FTPサーバへの画像アップロ...
-
連想配列を複数条件で比較して...
-
name属性が全角の場合・・・
-
if function PHP
-
マクロ(VBA)について
-
PDOのprepareでLIKEの部分一致...
-
画像をDBに登録できない
-
php メールフォーム エラー表...
おすすめ情報