• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:mysqlの検索について質問です。)

MySQLの検索について質問です

このQ&Aのポイント
  • MySQLの検索について質問です。会員登録の仕組みを作る際に、テーブルAとテーブルB間でのメールアドレスの一致を確認する方法を知りたいです。
  • 具体的には、テーブルA内のemailカラムにPOSTされたメールアドレスがテーブルB内に存在するかどうかを知りたいです。処理結果はtrueかfalseで返ってくるか、該当するレコード数で返ってくると便利です。

質問者が選んだベストアンサー

  • ベストアンサー
  • agunuz
  • ベストアンサー率65% (288/438)
回答No.1

MySQLはどのAPIで扱うか決めていますか? http://php.net/manual/ja/mysqlinfo.api.choosing.php データベースへ登録とかも行うんですよね。また合致するレコードの有無が調べられないと、登録した会員のログイン処理も書けません。今回の処理が書けないと何も出来ないハズですが、どうするおつもりだったのでしょうか。 データベースの取扱いの基礎の基礎ですから、マニュアルを熟読するのが先じゃないかと思います。 (PDOの例) $errmsg = ''; try { $pdo = new PDO("mysql:host=localhost;dbname=test;charset=utf8", 'root', ''); $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $stmt = $pdo->prepare('select * from table_name where email = ?'); $stmt->execute(array($email)); if ($stmt->fetch() !== false) { $errmsg = '登録済みのメールアドレスです'; } // try-end } catch (PDOException $e) { $errmsg = $e->getMessage(); }

mmm5orz
質問者

補足

ご回答ありがとうございます! URL、拝見しました。 参考にしたサイトがmysql_connectでデータベース接続していたので、mysqlということになると思います。 確かに仰られるとおり、基礎の基礎からわかっていないのでそちらのURLで順を追っていちから学習します!ありがとうございます!

その他の回答 (2)

  • agunuz
  • ベストアンサー率65% (288/438)
回答No.3

>通っている教室ではPEAR MDB2を使用してデータベース接続をしていたのですが >家のパソコンでPEAR MDB2で接続しようとしても上手く接続ができず、 PEAR::MDB2はインストールしないと使えません。 http://pear.php.net/package/MDB2/download まぁ、特にコダワリがなければまずはPDOでの扱いを覚えるのがいいとは思います。

mmm5orz
質問者

お礼

何から何までご指導ありがとうございますm(__)m 仰るとおりPDOの扱いを学ぼうと思います。 ド初心者の拙い質問にご回答頂いてありがとうございますm(__)m

  • agunuz
  • ベストアンサー率65% (288/438)
回答No.2

>参考にしたサイトがmysql_connectでデータベース接続していたので、 >mysqlということになると思います。 マニュアル(提示したURL)にも書いてありますが、ネイティブなMySQL関数はすでに非推奨です。今から書くならMySQLiもしくはPDOで書き直すことを「強く」お勧めします。 今の状況だとネイティブなMySQL関数を使っているサイトの大多数は参考にしてはダメなものの方が多いです。最低でも接続後にmysql_set_charsetが書かれているか確認してください(これがないようなソースは「論外」。mysql_queryでset namesなんかはダメ)。 http://www.php.net/manual/ja/function.mysql-set-charset.php php5.2.3以降、mysql5.0.7以降ならmysql_set_charsetが使えます。両方ともかなり古いバージョン(とっくにサポート切れ)ですから、これ以降を対象に書けば当然使っていないといけません。

mmm5orz
質問者

お礼

mysql_set_charsetは書いてありませんでしたので参考にしないようにします。 通っている教室ではPEAR MDB2を使用してデータベース接続をしていたのですが家のパソコンでPEAR MDB2で接続しようとしても上手く接続ができず、mysql_connectでの接続を参考にしてしまいました。 PDOについてこれから学習したいと思います! ありがとうございます!

関連するQ&A