【解決方法】警告: mysqli_connect(): (HY000/1045): C:\xampp\htdocs\projectgmaps\config.php の 7 行目で、ユーザー ‘map1user’@’localhost’ (使用するパスワード: YES) のアクセスが拒否されました

プログラミングQA


やあ、

エラーが発生します
警告: mysqli_connect(): (HY000/1045): C:\xampp\htdocs\projectgmaps\config.php の 7 行目で、ユーザー ‘map1user’@’localhost’ (使用するパスワード: YES) のアクセスが拒否されました

警告: mysqli_error() は、C:\xampp\htdocs\projectgmaps\config.php の 7 行目に 0 が指定された 1 つのパラメーターを想定しています。
接続されていません: ああ、シッ

config.php ファイル:

PHP
<?php
$host = "localhost"; 
$user = "map1user";
$password = "map1password";
$database = "map1";

$connection = mysqli_connect ($host, $user, $password) or die('Not connected : Ah sh*t ' . mysqli_error());
?>

その他のファイル:

PHP
<?php
require("config.php");

function parseToXML($htmlStr)
{
$xmlStr=str_replace('<','<',$htmlStr);
$xmlStr=str_replace('>','>',$xmlStr);
$xmlStr=str_replace('"','"',$xmlStr);
$xmlStr=str_replace("'",''',$xmlStr);
$xmlStr=str_replace("&",'&',$xmlStr);
return $xmlStr;
}

// Opens a connection to a MySQL server
//$connection=mysqli_connect ('localhost', 'username', 'password');
//if (!$connection) {
//  die('Not connected : Ah sh*t ' . mysqli_error());
//}

// Set the active MySQL database
$db_selected = mysqli_select_db($database, $connection);
if (!$db_selected) {
  die ('Can\'t use db : ' . mysqli_error());
}

// Select all the rows in the markers table
$query = "SELECT * FROM markers WHERE 1";
$result = mysqli_query($query);
if (!$result) {
  die('Invalid query: ' . mysqli_error());
}

header("Content-type: text/xml");

// Start XML file, echo parent node
echo "<?xml version='1.0' ?>";
echo '<markers>';
$ind=0;
// Iterate through the rows, printing XML nodes for each
while ($row = @mysqli_fetch_assoc($result)){
  // Add to XML document node
  echo '<marker ';
  echo 'id="' . $row['id'] . '" ';
  echo 'name="' . parseToXML($row['name']) . '" ';
  echo 'address="' . parseToXML($row['address']) . '" ';
  echo 'lat="' . $row['lat'] . '" ';
  echo 'lng="' . $row['lng'] . '" ';
  echo 'type="' . $row['type'] . '" ';
  echo '/>';
  $ind = $ind + 1;
}

// End XML file
echo '</markers>';

?>

私は実際にhttps://developers.google.com/maps/documentation/javascript/mysql-to-maps#echoxmlのGoogleによるガイドに従っています

しかし、それは私にそれらのエラーを与えます。 誰かが理由を知っていますか? (エコーオプションを使用してXML出力ビットを確認しています)

私が試したこと:

ユーザー名とパスワードを直接または変数を介して入力してみました。
代わりに、mysqli connect 関数を構成ファイルに移動しようとしました
新しいデータベース、新しいユーザー、新しいテーブルを作成しようとしました。

私はこれを機能させることができません。

どんな助けでも大歓迎です!

解決策 1

最初のものは非常に明確です:
データベースに接続しようとしたときに、無効な資格情報 (ユーザー名および/またはパスワード) を渡しました。 既存のユーザー アカウントについて知っているのはあなた (データベース管理者) だけなので、何を渡すかはここではお答えできません。

ユーザー アカウントを MySQL データベースに追加するには、次を参照してください。 MySQL :: MySQL 5.7 リファレンスマニュアル :: 6.3.2 ユーザー アカウントの追加[^]. これには、root として接続し、root パスワードが設定されている場合はそれを提供する必要があります。

2 番目は、1 番目と間違ったエラー関数を使用した結果です。 ために mysqli_connect()、電話する必要があります PHP: mysqli::$connect_error – マニュアル[^] それ以外の mysqli_error() エラー時:

PHP
$connection = mysqli_connect ($host, $user, $password) or die('Not connected : Ah sh*t ' . mysqli_connect_error());

解決策 5

これと同じ問題がありました。

まず、phpMyAdmin の「ユーザー アカウント」を確認します。

「パスワード」の下で、「ユーザー名」の横に「いいえ」または「はい」と表示されます。

接続しようとしているユーザー名のパスワードが「いいえ」と表示されている場合、接続にパスワードが必要ないときにパスワードを入力していることになります。

「はい」と表示された場合は、接続しようとしているユーザー名に対して間違ったパスワードを入力しています。

パスワードの変数を作成した .php ファイルで、空の文字列で空白のままにします…パスワード フィールドが「いいえ」と表示されている場合。

例えば、

$パスワード = ”;

解決策 10

Xampp を使用している場合、ホスト名は「localhost」ではなく「localhost:3306」にする必要があります。

解決策 2

Hi,
This error comes because you are using the wrong Database, Username or Password.
If you are the Database Administrator, you can go to your cPanel and check the Database, Username, and Password and mention correct information. 
One more thing to remember that the user should be connected to the same database and also have All Privileges. 

コメント

タイトルとURLをコピーしました