Wie connecte ich meine Strato-Datenbank im php-Skript?

3 Antworten

Hi Gemuesebaer,

das kann sein dass du nach dem anlegen der Datenbank etwas geduld haben musst bevor du darauf zugreifen kannst. Die meisten Webhoster haben auch die Einschränkung das man Datenbanken von außen nicht erreichen kann. Das heißt, wenn du das PHP-Script außerhalb hast, kannst du nicht auf die Datenbank zugreifen.

Aber der ware Grund warum das ganze nicht funktioniert liegt in dieser Zeile:

$userDB = "'dbu2********“;

Dort hast du ein Zeichen zu viel, davon gehe ich aus: nämlich ein '

Woher ich das weiß:Berufserfahrung – Ich bin gelernter Mediengestalter Digital und Print(IHK)

Ok, was erwartest du von diesem Script? Du verbindest dich mit der Datenbank und machst dann genau … nichts.

Bekommst du ene Fehlermeldung? Wenn nicht, dass scheint es ja zu funktionieren.

Woher ich das weiß:Berufserfahrung – Entwickle seit > 20 Jahren Anwendungen mit PHP.

Gemuesebaer 
Beitragsersteller
 01.04.2025, 09:22

Hallo Babelfish, danke für deine Antwort. Nein, mein Code geht noch weiter. In den oben genannten Teil include ich in meine login.php, in der ich dann überprüfe, ob Benutzername und Passwort (eingegeben im HTML-Formular mit POST-Methode) einen Treffer in der Benutzerdatenbank gibt. Falls ja wird man zur nächsten Seite weitergeleitet:

<?php 

if( isset($_POST['user']) && isset($_POST['passwort']) ){

$user = $_POST['user'];

$pass = $_POST['passwort'];

include "connect.php";

$sql = "SELECT spielername ";

$sql.= "FROM 'Spieler' ";

$sql.= "WHERE spielername = '$user' AND passwort ='$pass' "; 

$result = mysqli_query($conn, $sql);

if (mysqli_num_rows($result)){

header("Location: index.html"); 

}

else {

$message="die Login-Daten sind falsch !";

}

}

?>

(…)

Gemuesebaer 
Beitragsersteller
 01.04.2025, 09:26
@Gemuesebaer

Fortsetzung: Nachdem ich Benutzername und PW eingetragen und auf den Login-Button gedrückt habe, kommt dann eine Fehlermeldung (HTML Error 500)

Gemuesebaer 
Beitragsersteller
 01.04.2025, 09:54
@Gemuesebaer

Meine Güte, habe ich das Problem jetzt kacke beschrieben :-D Aber ich denke, es ist leicht ersichtlich, was ich mit dem Code erreichen möchte, oder?

Babelfish  01.04.2025, 12:17
@Gemuesebaer

Vorweg: bitte poste hier Quelltext auch als Quelltext, damit man ihn auch vernünftig lesen kann.

Ein 500er Fehler ist ein Serverfehler und deutet auf einen Fehler in deinem PHP hin, durch den der Parser das PHP nicht verarbeiten kann. Klassische Beispiele sind vergessene Semikolons oder fehlenden Anführungszeichen.

Bei dir liegt der/ein Fehler in deiner connect.php in der 2. Zeile:

$userDB = "'dbu2********“; 

Dort hast du zwei Fehler:

  1. Ein ' nach dem "
  2. Das schließende Anführungszeichen ist nicht " sondern ein typografisches

In deine 2. Script gibt es auch einen Fehler im SQL:

$sql.= "FROM 'Spieler' ";

Tabellennamen werden nicht in normale Anführungszeichen gesetzt. Entweder keine Anführungszeichen oder Backticks:

$sql.= "FROM `Spieler`";
Gemuesebaer 
Beitragsersteller
 01.04.2025, 20:48
@Babelfish

Danke, die Fehler habe ich ausgemistet und kam immer noch nicht weiter. Dann habe ich den einfachen Connect per PDO versucht und mir einfach nur den Erfolg oder Misserfolg des Connects ausgeben lassen, das hat funktioniert. Dann habe ich es prozedural probiert, ging auch. Also habe ich die ganzen Zeit an der falschen Stelle gesucht, den Zugang bekomme ich hin, nur mein Code ist falsch :-D Einfache Select-Abfragen habe ich jetzt mittlerweile raus, ich hangle mich weiter. Danke für deine Hilfe