Sie befinden sich hier im Forenarchiv von phpforum.de wenn Sie direkt ins Forum möchten, klicken Sie bitte hier. Zur Startseite kommen Sie hier.

Brauche tipp bei mysql Fehlermeldung

Hallo

Ich habe mir vor ein paar Tagen ein kleines PHP Script besorgt, und habe es auf mein Webspace hochgeladen.

Jetzt habe ich folgende Fehlermeldung:


Warning: mysql_query() [function.mysql-query]: Access denied for user 'wwwrun'@'localhost' (using password: NO) in /var/www/vhosts/panyuu.com/httpdocs/user_web/niffen/header.php on line 37

Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /var/www/vhosts/panyuu.com/httpdocs/user_web/niffen/header.php on line 37

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /var/www/vhosts/panyuu.com/httpdocs/user_web/niffen/header.php on line 38


Leider habe ich nicht viel Ahnung von mysql, und scheinbar etwas falsch gemacht.
Wer nett wen mir wer Helfen könnte.

Mit freundlichen Grüßen Niffen

Hier gehts zum Orginal Eintrag "Brauche tipp bei mysql Fehlermeldung" im Forum

Antworten

Der Fehler liegt darin, dass du dich nicht ordnungsgemäß mit dem MySQL Server verbindest:
Zitat:
Access denied for user 'wwwrun'@'localhost' (using password: NO)
Aber ohne Codeausschnitte können wir dir nicht sagen, wo der Fehler liegt.


2.

<?php
class mysql_db{
var $link = false;
var $resid = false;
var $doerror = false;
var $host = "freehost_229_1@localhost";
var $user = "freehost_229";
var $passwd = "hier habe ich mein passwort eingetragen";
var $tables = "........";

Die freien Zeilen, wusste ich nicht da nix in der Beschreibung stand.


3.

Auch das bringt uns nichts, den dasss ist die Klassendefinition, nicht die Instanzierung bzw. das Einloggen. Wie löst du das Einloggen, etc ?

Die Klasse stammt doch aus einem PHP Buch, kommt mir nämlich bekannt vor :)


4.

Hier ist der gesamte Code der Config Datei, habe nämlich kein plan was du meinst.

<?php
class mysql_db{
var $link = false;
var $resid = false;
var $doerror = false;
var $host = "freehost_229_1@localhost";
var $user = "freehost_229";
var $passwd = "mein password";
var $tables = "........";

function connect()
// Verbindet zur Datenbank
{
$temp = @mysql_connect
($this->host, $this->user, $this->passwd);
if (!$temp)
{
$this->echoerror();
return false;
}
$this->link = $temp;
$temp = @mysql_select_db($this->tables, $temp);
if (!$temp)
{
$this->echoerror();
return false;
}
return $this->link;
}

function query($sql)
// Sendet eine Anfrage an die Datenbank
{
if (!$this->link)
{
if ($this->doerror)
{
echo ("<b>Nicht verbunden.</b><br>");
return false;
}
}
if ($this->resid) @mysql_free_result($this->resid);
$result = mysql_query($sql, $this->link);
if (!$result) $this->echoerror();
$this->resid = $result;
return $result;
}

function echoerror()
// erzeugt eine Fehlerausschrift
// wenn $doerror=TRUE
{
if (!$this->doerror) return;
if (!mysql_errno()) return;
echo ("<font color=\"red\"><b>" . mysql_errno());
echo (": ". mysql_error() ." </b></font><br>");
}

function data()
// liefert einen Datensatz
{
if (!$this->link)
{
if ($this->doerror)
echo ("<b>Nicht verbunden!</b><br>");
return false;
}
if (!$this->resid)
{
if ($this->doerror)
echo ("<b>Keine Abfrage!</b><br>");
return false;
}
$result = mysql_fetch_array($this->resid, MYSQL_BOTH);
$this->echoerror();
return $result;
}

function echoquery($sql)
//Fragt die Datenbank ab und stellt die Abfrage dar
{
$this->query($sql);
echo("<table border cellpadding=\"3\"><tr>");
$index = 0;
echo("<th>record</th>");
while ($field = mysql_fetch_field($this->resid))
echo("<th>$field->name</th>");
echo ("</tr>\n");
$rec=0;
while ($row = $this->data())
{
$rec++;
echo("<tr><td>$rec</td>");
for ($i=0; $i<mysql_num_fields($this->resid); $i++)
echo("<td>".htmlentities($row[$i])."&nbsp;</td>");
echo("</tr>\n");
}
echo ("</table>");
}

function mysql_db()
// Construktor
{
$this->connect();
}

}

$db = new mysql_db;
?>


5.

Kann mir keiner Helfen??? :-(


6.

Mach mal die @ in deinem Source weg, die unterdruecken Fehlermeldungen. Ansonsten gibt dir error_reporting(E_ALL); Aufschluss auf Fehlerquellen.
Es sieht aufgrund der Fehlermeldung jedoch so aus, als haettest du kein Passwort uebergeben. (USING PASSWORD: NO)


7.

Was hast du hier eingetragen?
var $tables = "........";
Da sollte der Name deiner Datenbank erscheinen...

Und das hier ist i.d.R. nur localhost:
var $host = "freehost_229_1@localhost";


Hier gehts zum Orginal Eintrag "Brauche tipp bei mysql Fehlermeldung" im Forum
 
phpforum.de | Impressum | Handy Bundles