Datenbank zugriff Fehlgeschlagen

Hallo komme irgendwie nicht weiter habe ein Script installiert und es wird auch aufgerufen nur wenn ich den Adminbereich betreten will kommt folgendes:

Warning: mysql_pconnect() [function.mysql-pconnect]: Access denied for user ‚www-data‘@‚localhost‘ (using password: NO) in /users/loveme/www/includes/config.inc.php on line 429
Leider besteht zur Zeit keine Verbindung zum Datenbank.

die betrefenden Zeilen in der config.inc.php sind diese:

[b]if(strpos($PHP_SELF,„admin/“) or strpos($PHP_SELF,„cronjobs/“)){
$password_file = „…/“.$password_path.„passwd.inc.php“;
}else{
$password_file = $password_path.„passwd.inc.php“;
}

if(strpos($PHP_SELF,„admin/“) or strpos($PHP_SELF,„cronjobs/“)){
@include("…/includes/adminmail.inc.php");
}else{
@include("./includes/adminmail.inc.php");
}

if(strpos($PHP_SELF,„admin/“) or strpos($PHP_SELF,„cronjobs/“)){
@include("…/includes/currency.inc.php");
}else{
@include("./includes/currency.inc.php");
}

// --------------------

@include($password_file);

// Datenbank konnektieren

mysql_pconnect($DbHost,$DbUser,$DbPassword)

      or die("Leider besteht zur Zeit keine Verbindung zum Datenbank.");

mysql_select_db($DbDatabase);[/b]

Und in der passwd.inc.php steht folgendes:

[b]<?

$DbHost = „localhost“; // Der Hostname Ihrer Datenbank, z.B. localhost oder so, wie hier als Beispiel eingetragen
$DbDatabase = „***“; // The database you are going to use
$DbUser = „***“; // Ihr Datenbank-Benutzername
$DbPassword = „***“; // …und das Passwort
$AdminPasswd = „***“; // Dies ist das Passwort für den Admin-Bereich

?>[/b]

*** natürlich mit den Daten von mir :smiley:

habs auch schon nur mit connect versucht klappt auch nicht kann mir wer sagen worans liegt? :ps:

So weit ich weiss wird pconnect hier nicht unterstützt.

Kann also nur 2 Ursachen haben:

  1. Die Verbindungsdaten stimmen nicht

  2. der DB Server ist offline

da kannste schauen auf welchem Server Du bist :smiley:
piripiri014.mein-webperoni.de/bplaced/

Danke für die schnelle Antwort wie gesagt mit pconnect war mir klar habs auch mit connect versucht das selbe Problem die Daten stimmen alle soweit hab sie jetzt mindestens 10 mal mir angesehen hab auch nach rechtsschreibfehler geschaut nichts alles so wie es sein sollte noch einer ne Idee?
:hail:

Gruß Daniel

// Am Anfang des Scripts ...
error_reporting(E_ALL);
// Teile dazwischen ... bei der Verbindung:
or die("Blub".mysql_error());

Dann nochmal melden, event. auch $PHP_SELF durch $_SERVER[“PHP_SELF”] austauschen …

MfG
myPages

Hallo also mit dem wie du es beschrieben hast funktioniert es soweit hab aber noch ne frage kann man register_global on stellen über .htaccess? :qst:

Moin,

nein register_globals öffnet ein Sicherheits-Scheunentor und ist daher deaktiviert. Diese “Krankheit” bzw. das Überbleibsel aus älteren PHP-Versionen sollte man auch getrost vergessen, da bei PHP6 geplant ist alle unsinnigen und veralteten Sachen rauszuschmeissen.

Ein Beispiel wäre, wenn du z.B. ein Loginsystem hast, wo dann hinter die Variable $loggedin = true; gesetzt wird. Ein Angreifer könnte dann z.B. einfach deinedomain.de/?loggedin=true hinschreiben und wäre eingeloggt. Mehr über diese Sicherheitslücke verrät dir Tante G. :wink:

Man kann zwar versuchen per .htaccess die php Einstellungen anzusprechen, aber das dürfte eh keinen Erfolg bringen und ich werde auch nicht verraten mit welchen Befehlen :wink:

Fazit: register_globals bleiben off aus gutem Grund :smiley:

MfG
myPages

Ok wollts ja nur mal ausprobieren weil beim aufruf der register.php nichts passiert eigentlich schreibt der Hersteller des Scripts vor das register_globals off sein muss. Da wie schon gesagt beim aufruf jedoch nichts passiert bin ich ein wenig verwirrt über diese Aussage. :ps:
Das es solch ein Sicherheitsproblem damit gibt war mir nicht bekannt deshalb mal Danke für die Info. :hail:

Änder doch mal direkt ab:

mysql_pconnect($DbHost,$DbUser,$DbPassword)

mysql_connect(‘MeinHost’,‘Ichbins’,‘Geheim’)

mit echten Daten , wenn connect klappt liegt es am Script und nicht hier an der DB und dann sollte dein Ansprechpartner der Scripthersteller sein.