PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Mysql Error nach Webspace wechsel ...



powergrafik
11.02.2008, 20:52
Hallo Community,
also ich hab mein VMS auf einem anderen Server installiert,
und bekomme nun beim Aufruf der Index.php folgenden Error:



Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: Access denied for user 'web68'@'localhost' (using password: NO) in /home/www/web68/html/lib/functions.lib.php on line 50

Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: A link to the server could not be established in /home/www/web68/html/lib/functions.lib.php on line 50

Warning: mysql_query() [function.mysql-query]: Access denied for user 'web68'@'localhost' (using password: NO) in /home/www/web68/html/lib/functions.lib.php on line 54

Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /home/www/web68/html/lib/functions.lib.php on line 54


Die Mysql Daten in der functions.lib.php sind angepasst und richtig !
Denn wenn ich einen einfachen Mysqlconnect in einer anderen Datei mache,
"mysql_connect("" ..." dann bekomme ich keinen Error.

Als wie gesagt die Mysqldaten sind richtig und trotzdem Error.

=> PHP Version: PHP Version 5.2.0-8+etch1
=> safe_mode Off

Ich hoffe ihr könnt mir helfen ...

Danke
Mfg
Marvin

jpwfour
11.02.2008, 22:15
(using password: NO)

ich glaube mal nicht, dass du deinen mysql server ohne passwort benutzt, also liegt da vielleicht der fehler?

powergrafik
11.02.2008, 22:17
Das ist es ja , das Passwort ist angegeben.

Mfg
Marvin

jpwfour
11.02.2008, 22:29
hmm, dann liegt da irgendwo ein fehler im script vor, entweder hast du was verändert, oder irgendwas haut mit dem neuen server nicht hin.

du kannst ja mal dein functions.lib.php hier posten (ohne passwörter natürlich)

Gremlin
11.02.2008, 23:53
- Serverdaten nochmals kontrollieren!
- lib/functions.lib.php vor alle funktionen die so anfangen mysql_ ein @ machen
dieses @ unterdrückt nur die Fehlermeldungen ;) allerdings hab ich es selbst erlebt das das VMS unter manchen Serverkonfigurationen diese Meldungen ausgibt, durch ein @ werden diese nicht angezeigt aber die Verbindung trotzdem aufgebaut.

Gruß
Gremlin

powergrafik
12.02.2008, 07:53
Hier mal meine functions.lib.php



<?
header("Cache-control: no-cache");
$db_host = "localhost"; // Datenbankhost meistens localhost/127.0.0.1
$db_user = "web68"; // MySQL User
$db_pass = "xxx"; // MySQL Passwort
$db_base = "usr_web68_1"; // Datenbankname
$db_prefix = "vms"; // Datenbankpräfix bei Verwendung mehrerer Script in einer DB
$domain = "http://www.refstar.de"; // Url zum Script Ohne Slash am Ende
$seitenname = "Refstar.de"; // Name der Seite
$waehrung = "Lose"; // Währungsname der Seite
$admin_id = 1; // Userid des Admins
$betreibermail = "xxx@xxx.net"; // Email des Betreibers
$cron_pw = "xxx"; // Passwort für Cronjobs
$percode = 'AbCdEfGhIjKlMnOpQrStUvWxYz123456789'; // beliebiger Alphanumerischer String

// Paidbanner jackpott
$jackmin = 1000; // Kleinste Gewinnzahl
$jackmax = 5000; // Maximale Gewinnzahl
$banner_jackpotcode = 4548; // Jackpot Gewinnzahl (diese Zahl muß im Bereich zwischen jackmin und jackmax liegen
$banner_jackpot_startwert = 10000; // ist der Wert, mit dem ein neuer jackpot startet (kann auch 0 sein);

// Mail Jackpot
$jackmini = 5000; // Kleinste Gewinnzahl
$jackmaxi = 1000; // Maximale Gewinnzahl
$mail_jackpotcode = 4548; // Jackpot Gewinnzahl
$mail_jackpot_startwert = 10000; // Jackpot Startzahl


/* Globale Variablen nichts ändern */
$ip = $_SERVER['REMOTE_ADDR'];
if (!isset($login_check['hinweis'])) $login_check['hinweis'] = "";


/* Funktionen Start */

// Datenbankverbindung
function db_connect() {
global $db_host,$db_user,$db_pass,$db_base,$sql_open;
$sql_open = @mysql_connect($db_host, $db_user, $db_pass) or die('Verbindung zum Mysql Server fehlgeschlagen!');
$sql_base = @mysql_select_db($db_base) or die("Keine oder falsche Datenbank gewählt!");
}

// Mysql Querys
function db_query($sql_tag){
global $count_query;
$count_query++;
$vargs = array();
$fargs = func_get_args();
foreach($fargs as $key => $arg){
$vargs[$key] = mysql_real_escape_string($arg);
}
array_shift($vargs);
$sql_tag = vsprintf($sql_tag,$vargs);
if($ret = mysql_query($sql_tag)){
return $ret;
}else{
return 0;
}
}

// Datenbank schließen
function db_close() {
global $sql_open;
@mysql_close($sql_open) or die('Konnte die Verbindung mit Datenbank nicht schliessen!');
}

// Zufallscode
function create_code($code_laenge) {
srand((double)microtime()*1000000);
$created_code = '';
$zeichen="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwx yz1234567890";
for ($i=0;$i<$code_laenge;$i++) {
$n=rand() % strlen($zeichen);
$created_code .=substr($zeichen, $n, 1);
}
return $created_code;
}


// Einträge in Buchungsliste
function buchungsliste ($buchungs_id,$trans_menge,$verwendung,$fuer) {
global $db_prefix;
db_query("INSERT INTO ".$db_prefix."_buchungen (uid,buchungszeit,buchungs_id,buchungsmenge,verwen dungszweck) VALUES (".$fuer.",".time().",'".$buchungs_id."','".$trans_menge."','".$verwendung."')");
}

// Kontotransaktionen
function kontobuchung ($art,$trans_menge,$fuer) {
global $db_prefix;
db_query("UPDATE ".$db_prefix."_kontodaten SET `kontostand` = `kontostand` ".$art." ".$trans_menge." WHERE uid=".$fuer."");
}

// Schutz von internen Seiten
function userstatus () {
global $_SESSION,$db_prefix;
if ($_SESSION['login'] == 'true') {
$us = db_query("SELECT `uid`,`passwort`,`status`,`hinweis` FROM ".$db_prefix."_kontodaten WHERE uid=".$_SESSION['uid']." and passwort='".$_SESSION['passwort']."' LIMIT 1");
$login_check = mysql_fetch_array($us);

// nicht aktiviert oder nicht angemeldet!
if (!mysql_num_rows($us) or $login_check['status'] == 0) {
setCookie('uid','',time()-86400*30);
setCookie('passwort','',time()-86400*30);
setCookie('autologin','',time()-86400*30);
$_SESSION['uid'] = "";
$_SESSION['passwort'] = "";
$_SESSION['login'] = "";
@include_once('content/error/kein_zutritt.php');
@include_once('lib/footer.php');
die();
}

// gesperrt
if ($login_check['status'] == 2) {
setCookie('uid','',time()-86400*30);
setCookie('passwort','',time()-86400*30);
setCookie('autologin','',time()-86400*30);
$_SESSION['uid'] = "";
$_SESSION['passwort'] = "";
$_SESSION['login'] = "";
@include_once('content/error/user_gesperrt.php');
@include_once('lib/footer.php');
die();
}
} else {
@include_once('content/error/kein_zutritt.php');
@include_once('lib/footer.php');
die();
}
}

// Refumsatz gutschreiben
function refumsatz ($buchungssumme,$fuer) {
global $db_prefix;
db_query ("UPDATE vms_werberdaten SET umsatz = umsatz + ".$buchungssumme.", aktivzeit='".time()."' WHERE uid='".$fuer."'");
}

// Aktivrally
function aktivralley ($buchungssumme,$fuer) {
global $db_prefix;
// Wenn Aktivralley läuft
$ralleydaten_aktiv = mysql_fetch_array(db_query("SELECT `start`,`ende` FROM ".$db_prefix."_ralleydaten WHERE ralley = 'aktivralley' LIMIT 1"));
if ($ralleydaten_aktiv['start'] <= time() && $ralleydaten_aktiv['ende'] >= time()) {
db_query ('UPDATE '.$db_prefix.'_aktivralley SET punkte = punkte + '.$buchungssumme.' WHERE uid = '.$fuer);
if (mysql_affected_rows () == 0) db_query ('INSERT INTO '.$db_prefix.'_aktivralley (uid,punkte) VALUES ('.$fuer.', '.$buchungssumme.')');
}
}

// Klickrally
function klickralley () {
global $db_prefix,$_SESSION;
// wenn Klickralley läuft
$ralleydaten_klick = mysql_fetch_array(db_query("SELECT `start`,`ende`,`art`,`pro` FROM ".$db_prefix."_ralleydaten WHERE ralley = 'klickralley' LIMIT 1"));
if ($ralleydaten_klick['start'] <= time() && $ralleydaten_klick['ende'] >= time()) {
if ($ralleydaten_klick['art'] == 'dynamisch') db_query ("UPDATE ".$db_prefix."_ralleydaten SET jackpot=jackpot+'".$ralleydaten_klick['pro']."' WHERE ralley = 'klickralley'");
db_query ('UPDATE '.$db_prefix.'_klickralley SET klicks = klicks + 1 WHERE uid = '.$_SESSION['uid']);
if (mysql_affected_rows () == 0) db_query ('INSERT INTO '.$db_prefix.'_klickralley (uid,klicks) VALUES ('.$_SESSION['uid'].', 1)');
}
}

// Bilanzen
function bilanz ($ein,$aus) {
global $db_prefix;
$ein = round($ein,2);
$aus = round($aus,2);
$date_stamp = mktime(0,0,0,date(m),date(d),date(Y));
mysql_query('UPDATE '.$db_prefix.'_bilanz SET ein=ein+"'.$ein.'", aus=aus+"'.$aus.'" WHERE date='.$date_stamp.' LIMIT 1');
if (mysql_affected_rows() == 0) db_query('INSERT INTO '.$db_prefix.'_bilanz (ein,aus,date) VALUES ("'.$ein.'","'.$aus.'",'.$date_stamp.')');
}

db_query("UPDATE ".$db_prefix."_support SET status=2 WHERE status=1 AND time<".(time()-(5*86400)));
?>

Gremlin
12.02.2008, 15:20
Ja dann änder mal das mit den @ Zeichen wie ich beschrieben habe ;)

jpwfour
12.02.2008, 15:22
funktioniert ansonsten alles richtig? dann reicht es, wenn du den tipp von gremlin befoglst und vor alle mysql funktionen ein '@' machst.

ansonsten müsstest du mal checken, ob eventuell die verbindung zuvor geschlossen wird, was aber nur sein kann, wenn du addons oder selber was verändert hast.