Hi,
ich habe mal mein Problem vom Code her auf ein Minimum reduziert.
Code:
[code]
</head>
<body>
<?php
$verbindung = mysql_connect ("localhost", "meascg", "*******")
or die ("keine Verbindung möglich. Benutzername oder Passwort sind falsch");
mysql_select_db("mensascg")
or die ("Die Datenbank existiert nicht.");
?>
</body>
[/code]
Wenn ich alle Daten richtig eingebe, dann wird nichts angezeigt. Das soll ja aber auch so sein.
Wenn ich dann aber mein Passwort falsch eingebe oder Den Usernamen verändere, wird keine Fehlermeldung ausgegeben.
Jetzt meine Frage was mache ich denn bloß FALSCH ???
Schau einmal in diesem Thread nach. Über mysqli hast du ein wesentlich schönere Fehlerbehandlung und siehst genau, was falsch gelaufen ist.
Wenn nicht…
if ($mysqli->connect_error) ist besser, wie es der Fragensteller des Threads selbst geschrieben hat.
die(); entspricht ein print/echo mit einem anschließenden exit(); mehr nicht, d.h. es wird der Text (wo du beliebigen Text reinschmeißen kannst) ausgegeben und anschließend springt er zum Ende des php-Byte-Codes, was mir weniger gefällt, da bei solchen Codes, wie deinem das -Tag nie geschlossen wird und die Seite dadurch unförmig wird.
1:beim alten Code kommt auch wenn ich ein falsches Passwort eingebe das selbe im Browser raus, deshalb glaube ich nicht, dass die Verbindung funktioniert.
2.mit dem neuen Code kommt wieder was anderes im Browser raus.
Was im Browser rauskommt:
connect_error) { die(“Es konnte Keine Verbindung zur Datenbank hergestellt werden:\n”.$mysqli->connect_error); } ?>
und der neue Code:
[code]
</head>
<body>
<?php
// MySQL Settings
$dbhost = "localhost";
$dbuser = "mensascg";
$dbpass = "********";
$dbname = "mensascg";
$mysqli = new mysqli($dbhost, $dbuser, $dbpass, $dbname);
// Checkpoints Query
if ($mysqli->connect_error) {
die("Es konnte Keine Verbindung zur Datenbank hergestellt werden:\n".$mysqli->connect_error);
}
?>
</body>
Naja aber ich benutze PhP ja generell richtig. In Anleitungen, wie meinem Nachschlagewerk wird es auch so gemacht. Ebenso in diversen Dokus oder Tutorials im Netz. Ich weiß einfach nicht wo der Fehler liegt…
Aus diesem Grund wäre es ratsam, PHP nicht in HTML-Dateien zu verwenden, dann kann es eben nicht passieren, dass man die Servereinstellungen außer Acht gelassen hat und der Quelltext samt Passwörtern offen dargestellt wird.
[quote=„mensascg“]
Kann ich denn trotzdem meinen normalen html code behalten oder muss ich ggf. was abändern?[/quote]
Ja, kannst du.
Mfg
edit: Ich würde ja jetzt mein Passwort ändern, mein böses Ich und Gott weiß wer noch alles hat es nämlich gesehn