sql >> データベース >  >> RDS >> Mysql

PDO警告の抑制

    ここで確認できるのは、に例外をスローするようにPDOに指示することだけです。 接続を開こうとしました。手遅れである可能性が高いです。

    代わりにできることは、4番目のパラメーターを使用してそのオプションをコンストラクターに直接送信することです。

    try {
      $opts = array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION);
      $db = new PDO($dbms . ':host=' . $dbhost . ';port=' . $dbport . ';dbname=' . $dbname,
                    $dbuser, $dbpasswd, $opts);
    } catch(PDOException $e) {
    ...
    

    それはおそらくあなたの問題を解決するでしょう。

    編集: ホスト名がユーザーによって提供されている場合は、PDOコンストラクターに送信する前にホスト名を検証できます。

    例:

    if (filter_var(gethostbyname($user_provided_host_name), FILTER_VALIDATE_IP)) {
      // valid hostname / ip address
    }
    

    これはドメイン名localhostで機能します およびIPアドレス。




    1. Liquibaseでデータベースを作成する方法

    2. 投稿する前にデータをオフラインで保存する

    3. SQLServerで自動インクリメント主キーを定義する方法

    4. MySQLユーザーDBにパスワード列がありません-OSXへのMySQLのインストール