mysql_connect() Problem :(

NetPerformance

Erfahrenes Mitglied
Hallo

Ich habe Datenfelder/Datensätze angelegt.
Nun möchte ich auf mein Datenbank zugreifen.

Datenbank befindet sich auf dem Server.
PHP-Script befindet sich auch auf dem Server.

$db = mysql_connect("localhost", "datenbankName", "meinPasswort");

$db = mysql_connect("mysql1.kontent.de", "datenbankName", "meinPasswort");

Beide Versionen scheinen nicht zu funktionieren !

Was habe ich falsch gemacht, bzw. vergessen ?!

Bedanke mich im vorraus

Aaron

Script

PHP:
<html>
<head>
<title>MySQL Abfrage</title>
</head>

<body>

<?php
// Funktion öffnet eine Verbindung zum MySQL-Datenbank-Server. 
// mysql_connect(Hastname, Benutzername, Passwort)
$db = mysql_connect("localhost", "datenbankName", "meinPasswort"); // $db  = Verbindungskennung
$res = mysql_db_query("datenbankName", "select * from person");  // $res = Ergebniskennung
$num = mysql_num_rows($res); // $num = Anzahl Datensätze

echo "$num Datensätze gefunden";

// Um alle Datensätze auszugeben
for($i=0; $i<$num; $i++)
{
	$nn = mysql_result($res, $i, "name");
	$vn = mysql_result($res, $i, "vorname");
	$pn = mysql_result($res, $i, "personamnummer ");
	$gh = mysql_result($res, $i, "gehalt");
	$gb = mysql_result($res, $i, "geburtstag");
	
	echo "$vn, $nn, $pn, $gh, $gb";
}

// Server-Verbindung wird wieder geschlossen.
mysql_close($db);

?>

</body>
</html>
 
Um Dir helfen zu können, wäre es sicherlich von Vorteil, wenn Du verraten würdest, was genau nicht funkitoniert.
Fehlermeldung? Passiert nichts? ...?
 
Schreib mal ein kleines Testscript mit folgendem Inhalt:

PHP:
if($db = mysql_connect("localhost", "datenbankName", "meinPasswort"))
{ 
 echo 'Verbindung hergestellt<br><br>';

 $res = mysql_db_query("datenbankName", "select * from person");
 
 if(!$res)
  echo mysql_errno() . ": " . mysql_error(). "<br>\n";
}
else
 echo 'Verbindung nicht herstellbar !<br>';

Das könnte eventuell den Fehler verraten. ;)
 
Man sollte sich schon informieren, welche Parameter mysql_connect erwartet. Und der Datenbankname gehört sicherlich NICHT dazu.
http://de3.php.net/mysql_connect
PHP:
mysql_connect("host","user","passwort") or die(mysql_error()); // User und nicht Datenbankname
// Dann kommt
mysql_select_db("datenbankname");
// Und dann benutzt man einfach
mysql_query("Query");
// Und nicht mysql_db_query, das ist nämlich veraltet.
 
Hiho

Vielen Dank für die schnellen Antworten!

Habe den oberen Teil verändert:
PHP:
mysql_connect("localhost","user_name","passwort") or die(mysql_error());  $db  = mysql_select_db("db_name"); 
$res = mysql_query("Query");  
$num = mysql_num_rows($res); 

echo "$num Datensätze gefunden";

Ich erhalte nun diese Fehlermeldung:
Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

Die Fehlermeldung verschwindet, wenn ich statt localhost (mysql1.kontent.de ) eintrage.

Sobald ich mysql1.kontent.de eintrage, erhalte ich die Meldung :. Datensätze gefunden

Jedoch fehlt immer noch die $num Ausgabe.

Irgendwas stimmt immer noch nicht :/

Gruß und Thx
Aaron
 
Ich hoffe, du hast das
PHP:
$res = mysql_query("Query");
auch wieder durch das
PHP:
$res = mysql_query("SELECT * FROM person");
ersetzt? Wenn der Fehler trotzdem auftritt, dann häng auch einfach mal an den Query-Befehl ein
PHP:
 or die(mysql_error());
 
Zurück