PHP mysql_connect

Apon

Mitglied
Hallo Leute!

Auch wenn dieses Thema langsam nervt, aber es muss sein. Denn auch nach langer suche konnte ich selbständig keine Hilfe finden.
Also hier mein Problem:

Ich versuche mit PHP eine eine Verbindung zu MySQL aufzubauen,

PHP:
<?
 
echo "1<BR>";
 
$host = 'localhost';
$user = 'root';
$pw = '';
$db = 'datenbank1';
 
echo "2<br>";
 
if(mysql_connect($host, $user, $pw))
{
	echo 'Verbindung hergestellt';
}
else
{
	die('Verbindung konnte nicht hergestellt werden');
}
 
echo "3<br>";
 
?>

im Browser erscheint:

1
2

mehr nicht (keine Fehlermeldung etc.).

Der Dienst MySQL ist gestartet und scheint zu laufen.

Gebe ich in der Konsole "telnet localhost 3306" ein erschein nach wenigen Sekunden:
Verbindung zu Host verloren.

Weitere Daten:
Betreibssystem: XP
PHP 5.0.5
MySQL 4.1.14-nt-max-log
phpMyAdmin 2.6.4-pl1

Bedanke mich schonmal im Voraus für eure Hilfe.

Apon
 
Probier mal anstelle von localhost die IP 127.0.0.1
Wenn ich mich recht erinnere wird bei localhost versucht eine Verbindung ueber einen Socket aufzubauen und nicht ueber TCP/IP. Bei 127.0.0.1 hingegen wird TCP/IP genutzt.
 
Danke erstmal für deine Antwort.
Hab' ich allerdings schon versucht und funktioniert auch nicht.

Oder muss ich, wenn ich die IP 127.0.0.1 nutzen will, noch andere Einstellungen vornehmen?

MfG Apon
 
Eigentlich nicht.

Ist aber schon etwas komisch, dass Du beim Telnet nach ein paar Sekunden die Verbindung verlierst ohne etwas zu sehen. Zumindest deutet das darauf hin, dass etwas auf dem Port laeuft.
Vielleicht kannst Du mit einem Port-Scanner herausfinden ob das auch wirklich Dein MySQL ist, obwohl ich mir da zur Zeit nicht viel von verspreche.
Mein MySQL gibt auf jeden Fall gleich etwas aus wenn ich mit Telnet zu dem Port verbinde.
 
Ja Dennis,

bei mir wird auch erst was ausgegeben und dann kommt die Meldung, dass er die Verbindung zu localhost verloren hat.

Ausgabe:
4.1.14-nt-max-log}'r?``,TB-,:-) YY209j-A>TlA
Der Smiley ist wirklich da. Das Zeichen sieht zumindest aus wie einer.

Apon
 
Ach so.
Na dann verhaelt sich Dein MySQL in der Beziehung genauso wie meins.

Es ist nur irgendwie komisch, dass weder die Erfolgs- noch die Fehlermeldung ausgegeben wird.
 
Da muss es ein Problem mit mySQL geben oder WinXP hat einfach andere Ansichten...

Code:
<?php
 
echo "1<BR>";
 
$host = 'localhost';
$user = 'root';
$pw = '****';
$db = 'datenbank1';
 
echo "2<br>";
 
if(mysql_connect($host, $user, $pw))
{
    echo 'Verbindung hergestellt';
}
else
{
    die('Verbindung konnte nicht hergestellt werden');
}
 
echo "3<br>";
 
?>

Habs genau so laufen lassen (einzige Änderung: php nach <? am Anfang zwecks Code Highlighting, Passwort eingefügt - nanonanet ;))

Folgende Ausgabe:

1
2
Verbindung hergestellt3
 
Ob Du nun <? oder <?php schreibst sollte sich eigentlich weniger darauf auswirken ob mit MySQL verbunden werden kann sondern eher, je nach Einstellung in der php.ini ob das Script ausgefuehrt wird oder nicht.

Hattest Du vorher kein Passwort angegeben? Aber selbst wenn sollte es dann doch eigentlich eine Fehlermeldung geben. :confused:
 
Danke, dass du es bei dir mal hast laufen lassen Rottlott.
Hab' ich schon befürchtet, dass es nur bei mir nicht läuft.

Nein Dennis, ich habe kein Passwort vergeben. Ich hatte es auch mal mit Passwort versucht, aber wie du schon sagst, es müsste zumindest eine Fehlermeldung kommen.

Apon
 
Zurück