Kein Datenbankzugriff und/oder -verbindung möglich

Matze888

Benutzer
Mitglied seit
10. Okt 2018
Beiträge
3
Punkte für Reaktionen
0
Punkte
1
Hallo

Ich bräuchte einmal ein bissl Hilfe.


Ziel:
Ich möchte mit PHP-Scripten auf eine Datenbank zugreifen und dort Daten auslesen bzw. eintragen.


Aufbau:
Folgende Konfiguration
- DS718+
- DSM 7.1.1-42962 Update 6 (ist somit aktuell)
- MariaDB (10.3.32-1040) (Mit und ohne TCP/IP-Verbindung getestet!)
- Apache HTTP Server 2.4 (2.4.54-0125)
- PHP 8 (8.0.23-0103)
- phpMyAdmin (5.2.1-1078
- Web Station (3.1.0-0339)

Zugriff auf die Datenbank per phpMyAdmin funktioniert.

Folgende PHP-Datei habe ich erstellt, um eine Verbindung zur Datenbank aufzubauen.
config.php:
<?php
$hostname = "localhost";
// $hostname = "localhost:3306";
// $hostname = "localhost:/run/mysqld/mysqld.sock";
// $hostname = "localhost:/run/mysqld/mysqld10.sock";
// $hostname = "192.168.178.111:3306";
// $hostname = "/run/mysqld/mysqld.sock";
// $hostname = "127.0.0.1";
$username = "UserName";
$password = "PWD#PWD";
$database = "MeineDB";

// #Datenbankverbindung aufbauen - Anfang
$conn = new mysqli($hostname,$username,$password,$database);
// Check connection
if ($conn -> connect_errno) {
echo "Failed to connect to MySQL: " . $mysqli -> connect_error;
} else {
echo "Verbindung hergestellt!";
}
// Datenbankverbindung aufbauen - Ende
?>
Die auskommentierten hostname(n) habe ich alle schon ausprobiert und haben keinen Erfolg gebracht.


Fehlermeldung:
Wenn ich diese Aufrufe erscheint folgende Meldung:
Diese Seite funktioniert nicht
website kann diese Anfrage momentan nicht verarbeiten.
HTTP ERROR 500


Tests von mir:
Wenn ich allerdings diese Zeile entferne bzw. auskommentiere (//):
// $conn = new mysqli($hostname,$username,$password,$database);
erscheint folgende Meldung "Verbindung hergestellt!".

Was ja richtig ist, da $conn ja keinen Fehler bringen kann.
Jetzt weiß ich nicht, wo der Fehler in der Zeile ist.
Ich sehe da keinen. Also muss es einen anderen geben! Nur welchen?


Weitere Tests von mir:
Zum testen habe ich mal WordPress installiert.
Schon bei der Installation wurde ich nach dem Passwort für die Datenbank (MariaDB) gefragt, was dann auch geklappt hat und WordPress wurde installiert und ausgeführt.
Der Benutzer für die Datenbank wurde angelegt, die Datenbank ansich auch. Einfach alles. Wunderbar. Also scheint ja die Installation und die Zugriffsmöglichkeit erfolgreich zu sein.


Frage:
Woran liegt es nun?
Ich weiß es nicht. Auch nicht, wo ich jetzt in einem Error-Log schauen kann bei der Synolgy oder sonstwo.


DANKE:
Daher wäre es super, wenn ich einen Tipp bekommen könnte woran es dann liegt.

Wenn ihr mehr Informationen benötigt, dann bitte Bescheid geben.

Danke Euch schon mal.

Gruß
Matze
 

Ulfhednir

Benutzer
Sehr erfahren
Mitglied seit
26. Aug 2013
Beiträge
3.474
Punkte für Reaktionen
1.087
Punkte
194
Du baust die Verbindung über
PHP:
new mysqli
auf.
Insofern muss mysqli auch im verwendeten PHP-Profil aktiviert sein.
wxWwBHF.png
 

Matze888

Benutzer
Mitglied seit
10. Okt 2018
Beiträge
3
Punkte für Reaktionen
0
Punkte
1
Hallo
Vielen Dank für die Info.
Das hat irgendwie geklappt.
Zwar nicht der Hacken, aber wohl ein anderer. Als ich alle aktiviert hatte klappte es.
Gruß
Matze
 

*kw*

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
10. Aug 2013
Beiträge
2.842
Punkte für Reaktionen
1.379
Punkte
174
Ich hab das ganze Gewürzregal ins Essen gekippt. Schmeckt zwar komisch, aber gewürzt ist es. ;)

"Irgendwie" kling unzufrieden. Dann test doch mal aus, welcher es war?
 

Matze888

Benutzer
Mitglied seit
10. Okt 2018
Beiträge
3
Punkte für Reaktionen
0
Punkte
1
Hi *kw*
Etwas unzufrieden, aber so geht es erst einmal. Bei Gelegenheit werde ich das mal testen.
So läuft es erst einmal und ich kann mich mal wieder mit PHP-Programmierung beschäftigen.
Gruß
Matze
 

Ulfhednir

Benutzer
Sehr erfahren
Mitglied seit
26. Aug 2013
Beiträge
3.474
Punkte für Reaktionen
1.087
Punkte
194
Dein Skript funktioniert, insofern die Verbindungsdaten korrekt hinterlegt sind und die Erweiterung mysqli aktiviert ist.
Das habe ich selbst mit der PHP gegengetestet. Wenn die Extension nicht aktiv ist, gibt es einen HTTP ERROR 500.

Aus meiner Sicht gibt es nur folgende Fehlerquellen:
  1. Du hast ein zusätzliches PHP-Profil angelegt, aber nicht korrekt zugewiesen
  2. Du hast die Extension nicht im benutzerdefinierten PHP-Profil aktiviert
  3. Die Zugangsdaten wurden falsch hinterlegt
 


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat