Access denied... ist aber alles korrekt!

Zero2000

Erfahrenes Mitglied
Hallo

Ich habe ein Problem beim Einfügen von Daten in meine Datenbank.
Auf Localhost gehts und bei Strato auch, nur bei meinem neuen Hoster nicht.
Fehlermeldung ist komischerweise diese:
PHP:
Access denied for user: '@localhost' to database 'DB002'
Das ist das Script welches die Daten einfügen soll:
PHP:
require("db.inc.php");
      $db = mysql_connect()or die("<b>Keine Verbindung m&ouml;glich!</b>");
      mysql_db_query("$database", "INSERT INTO event (datum, event, info) VALUES ('$datum', '$event', '$info')") or die("Auswahl der Datenbank fehlgeschlagen.<br><br>".mysql_error());
Daten auslesen lassen kann ich mit der db.inc.php also kann es doch nicht wirklich ein Problem mit dem Passwort sein oder?

MfG Maik
 
Wenn bei der mysql_connect()-Funktion keine Parameter angegeben sind, greift die Funktion auf Standardwerte für den Host (localhost), den Benutzername (root) und das Passwort (leere Zeichenkette) zurück.
 
Hi

So sieht meine db.inc.php aus:
PHP:
$host      = "localhost";
$user      = "*****";
$pwd       = "*****";
$database  = "DB002";
$db = mysql_connect($host, $user, $pwd) or die("Keine Verbindung zum Server möglich!");
mysql_select_db($database) or die("Verbindung zur Datenbank fehlgeschlagen ".mysql_error());
Wie gesagt Passwort und Benutzer stimmen, denn mit der selben db.inc.php lese ich ja auch Daten aus der DB.

MfG Maik
 
Hallo!

Aber warum 2 mal mysql_connect?
Wenn ich es richtig sehe stellst Du zuerst die Verbindung mit den Benutzerdaten her und anschliessend nochmal ohne Benutzerdaten.
Dadurch (so würde ich jetzt denken) werden die vorherigen Benutzerdaten durch die neuen (die nicht angegeben sind) überschrieben.
Dass würde auch erklären warum in der Fehlermeldung nur @localhost und nicht *****@localhost steht.
Das localhost aus der db.inc.php wird durch den "Defaultwert" localhost (siehe Gumbo) überschrieben.

Ich würde also einfach mal testhalber den zweiten mysql_connect auskommentieren:
PHP:
require("db.inc.php"); 
	 // $db = mysql_connect()or die("<b>Keine Verbindung m&ouml;glich!</b>");
Gruss Dr Dau
 
Zurück