データベースのすべてのログイン情報を、次のような変数のパブリック ツリーの外部にあるファイルに保存します。
$hostname = '172.0.0.0';
$dbname = 'myname_mydbname';
$username = 'myname_user';
$pw = 'password';
それはかなり標準的です。
問題は、私が使用しているこの特定のホスティングではmyname_
、すべてのデータベースとユーザー名の前に を追加する必要があることです。これらの文字列を保存して PDO に渡すと、myname の後のユーザー名のすべてが削除され、パスワード文字列がすべて削除されます... ユーザー名とパスワードを変数の代わりに文字列として関数に入れると、すべてが機能します。私は途方に暮れています。誰でも助けることができますか?コード内の関数は次のとおりです。
動作しません:
$this -> DB = new PDO ("mysql:host={$hostname}; dbname={$dbname}", $username, $pw);
作品:
$this -> DB = new PDO ("mysql:host={$hostname};dbname={$dbname}", 'myname_user', 'password');
ここの誰かが私をバカにしてくれることを願っています...よろしくお願いします。-デビッド
エラーが役立つかもしれません...
DB ハンドルの取得に失敗しました: SQLSTATE[28000] [1045] ユーザー 'myname'@'localhost' のアクセスが拒否されました (パスワードを使用: NO)