[解決済み] if define('DB_HOST','localhost')をどのように扱うか。
2022-02-07 09:25:38
質問
のようにsmtを使用したことがあります。
$con = mysql_connect("localhost", "root", "root") or
die("Could not connect: " . mysql_error());
mysql_select_db("xxx");
でも、気がついたら、みんなこんな風にsmtを使うようになっていたんです。
if (!defined('DB_HOST')) define('DB_HOST','localhost');
if (!defined('DB_USER')) define('DB_USER','root');
if (!defined('DB_PASS')) define('DB_PASS','root');
if (!defined('DB_NAME')) define('DB_NAME','xxx');
使い方はどう違うのでしょうか?例えば、エコー、フィルタリング...
ありがとうございました。
解決方法を教えてください。
まあ、どれも間違いではないので、お好みでどうぞ。私は、2番目の選択肢の方が良い方法だと思います。しかし、私の発言は、1つのファイルで定義する場合にのみ有効であり、かつ
require_once
を追加しました。例を挙げます。
db_config.php
:
if (!defined('DB_HOST')) define('DB_HOST','localhost');
if (!defined('DB_USER')) define('DB_USER','root');
if (!defined('DB_PASS')) define('DB_PASS','root');
if (!defined('DB_NAME')) define('DB_NAME','xxx');
query.php
:
require_once db_config.php;
$con = mysql_connect(DB_HOST, DB_USER, DB_NAME) or
die("Could not connect: " . mysql_error());
mysql_select_db("xxx");
しかし、なぜでしょうか?データベースの名前、ユーザー名、パスワードを変更したいと想像してください。もし、あなたがコード
mysql_connect("localhost", "root", "root")
が必要な場合、計画を変更すると、多くの再コーディングが必要になります。しかし、2番目の選択肢のように一箇所で定義しておけば、多くのファイルを書き直す必要はないだろう。
関連
-
[解決済み】Notice: 非オブジェクトのプロパティを取得しようとしているエラー
-
[解決済み】Wordpressの子テーマのstyle.cssが効かない。
-
[解決済み] Uncaught Error: 未定義の関数 mysql_escape_string() の呼び出し。
-
[解決済み] libapache2-mod-php7 パッケージの場所がわからない
-
[解決済み] PHPでSQLインジェクションを防ぐにはどうしたらいいですか?
-
[解決済み] ある文字列が特定の単語を含んでいるかどうかを確認するにはどうすればよいですか?
-
[解決済み] YouTube APIからYouTubeビデオのサムネイルを取得する方法を教えてください。
-
[解決済み] MySQLでコマンドラインを使用してSQLファイルをインポートするにはどうすればよいですか?
-
[解決済み] pipで特定のバージョンのパッケージをインストールする
-
[解決済み】PHPの'foreach'は実際どのように動作するのですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] 整形されていない数値が発生しました。
-
[解決済み】SQLSTATE[42000]: 構文エラーまたはアクセス違反が発生しました。1064 SQL 構文にエラーがあります - PHP - PDO [重複]。
-
[解決済み】Phpのincludeが機能しない? 関数がincludeされない
-
[解決済み】Chrome net::ERR_INCOMPLETE_CHUNKED_ENCODING エラーが発生しました。
-
[解決済み】PHP フェイタルエラー。未定義の関数mssql_connect()をコールしています。
-
[解決済み】既に開始されているPHPセッション【重複あり
-
[解決済み】count()パラメータは配列かlaravelのcountableを実装したオブジェクトでなければならない
-
[解決済み] Uncaught Error: 未定義の関数 mysql_escape_string() の呼び出し。
-
[解決済み】mysqli::query(): mysqli をフェッチできない
-
[解決済み] PHP 未定義関数への呼び出し