PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Problem mit Zugriff auf Datenbank ?



Mario33
08-07-2003, 12:00
Hallo !

Ich habe folgende Fehler auf der Seite : http://123.micity.de/surfbar/

Schaut euch das doch bitte mal an, ich hänge da seit 5 Tagen dran.


Danke und Gruß Mario

quinte17
08-07-2003, 12:18
also hier in mehreren foren zu posten bringt auch nicht viel! zudem nervt es vielleciht auch noch den einen oder anderen, weil im datenbanken forum hast du ja schon die lösung!

du musst den benutzer deiner mysql halt auch bekannt machen ist dass so schwer zu verstehen?

es bringt nichts wenn du in deinem betriebssystem (linux) mit useradd einen neuen benutzer anlegst, weil der hat NICHTS mit deiner datenbank zu tun!

schau noch einmal im anderen thread da stehts drin wies geht...
du musst dich halt zuerst als root an der datenbank anmelden und dann einen user einrichten dann ist dein problem auch gelöst... aber mehr als vorkauen können wir hier halt auch nicht

mfg
quinte17

Mario33
08-07-2003, 12:36
Erstens habe ich es so gemacht und es bringt nichts !
Zweitens sollte ich es in diesem Forum Posten.

Also kommt Unternander klar und pflaumt die User nicht an

quinte17
08-07-2003, 12:47
ich wollte dich nicht anpflaumen, aber es ist ein db problem und kein php prob...
du logst dich als user auf deiner maschine ein
dann
mysql -u root

evtl fragt er dann nach einem passort, dass du hoffentlich weißt dann

grant all on DATENBANK to USER@localhost identified by "PASSWORT";

dann hat USER mit dem passwort PASSWORT von lokal aus vollzugriff auf eine datenbank

du musst halt dann
mysql_connect(blabla);
mysql_use_db(DATENBANK);

oder so ähnlich noch machen... guckst du dann auf http://www.php.net

und wenns dann nciht geht, dann machst du irgendeinen logischen fehler und beschreibst dein problem nicht gut genug....

wenn du einen eigenen rechner für die mysql hast und einen rechner für den webserver, dann funzt obiges nicht ganz... dann brauchst:
grant all on DATENBANK to USER@* identified by "PASSWORT";

somit kann jeder andere rechner im weltweiten netz auf die mysql connecten... sofern er user und passwort weiß... als heftige workaround kannst des dann so machen wenn die software nicht auf einem rechner is...

aber sicher ist des nicht...

mfg quinte17

offe
08-07-2003, 15:52
Hallo,

Poste doch mal die ersten 5 Zeilen von /home/www/web3/html/surfbar/tpl/header.php

Passwörter als ****

sonst ist raten angesagt.

Offe

Mario33
08-07-2003, 16:47
Hallo !

Hier die ersten 8 Zeilen der Header.php !

<?

require("script/config.php");

$result = mysql_query("SELECT `bid` FROM `go4hitsbanner`");
$usercnt = mysql_num_rows($result);

?>


Gruß und Danke !

Gaert
08-07-2003, 17:00
Hallo!

@quinte17: Schön erklärt... fehlt nur noch ein FLUSH PRIVILEGES am ende, sonst aktualisiert die DB die User nicht.

@Mario33: Was offe eigentlich meinte war die Stelle im code mit der du versuchst die Datenbank connection herzustellen.

Übrigens sagt die Fehlermeldung (Using password: NO), was bedeutet, dass du ohne passwort versuchst auf die DB zu connecten... da kann ja wohl was nicht stimmen oder? Schau mal nach!

Abschließend:
Hier wird niemand angepflaumt, nur Doppelpostings werden nicht gerne gesehen... es sei dir in diesem Falle verziehen :D

Mario33
08-07-2003, 17:13
Ja, das macht , man aber doch mit der config !

$dbhost = "localhost"; // Datenbank-Server
$dbuser = "wwwrun"; // Datenbank-User
$dbpass = "******"; // Datenbank-Passwort
$dbname = "go4hitsbanner"; // Datenbank


Der Benutzer wwwrun war vorher web3 ! Denn hab ich geändert aber ich komme einfach nicht weiter !

Ich habe schon zig scripte installiert, aber sowas hatte ich noch nie.

Ich hab 30 Kunden auf dem Server und da läuft doch auch alles, warum meins hier jetzt nicht ?

Gruß Mario

Gaert
08-07-2003, 17:41
Die Zugangsdaten bringen mir nichts...
Wo ist die Stelle wo du mysql_connect() aufrufst und die Datenbank wählst?
Kannst du mit den Zugangsdaten über die Konsole connecten?

Mario33
08-07-2003, 18:25
Würdest Du dir das ansehen wenn ich Dir die Zugangsdaten per mail sende ?

Mario33
08-07-2003, 18:43
Hier habe ich vieleicht was gefunden aus meiner surfbar.php !

<? if ($Submit=="Login") {session_register(pid, uidlog, upasslog, emaillog);} else {session_start(); $uid=$uidlog; $upass=$upasslog;}

include("config.inc.php");

$link = mysql_connect($host, $benutzer, $pass);

if ( ! $link )

die("Keine Verbindung zu MySQL");

mysql_select_db( $db, $link)

or die( "Konnte Datenbank nicht öffnen");

Weiss aber nicht ob das Interessant ist .

quinte17
09-07-2003, 06:54
Original geschrieben von Mario33
<? if ($Submit=="Login") {session_register(pid, uidlog, upasslog, emaillog);} else {session_start(); $uid=$uidlog; $upass=$upasslog;}

include("config.inc.php");

$link = mysql_connect($host, $benutzer, $pass);

if ( ! $link )

die("Keine Verbindung zu MySQL");

mysql_select_db( $db, $link)

or die( "Konnte Datenbank nicht öffnen");


da versucht er nur eine connection aufzubauen, und eine datenbank auszuwählen... ändere doch mal $host ind $dbhost und so um... (wie deine variablen in der config.inc.php heißen... dann kommst du vielleciht weiter weil sonst versucht er unter dem namen zu connecten unter dem dein apache läuft, und des ist nunmal wwwrun ^^

dass es an sowas einfachem liegt kann keine wissem *gG*

mfg

Gaert
09-07-2003, 08:25
Das Problem von Mario33 wurde gestern weitestgehend gelöst.
Das Problem war, dass in der header.php gar keine connection aufgebaut wurde.
Hab leider vergessen das hier zu Posten, sorry
:rolleyes: