PHP-Skript lässt sich nicht per Browser aufrufen

Jrlohni

Benutzer
Mitglied seit
14. Jan 2020
Beiträge
39
Punkte für Reaktionen
0
Punkte
6
Moin zusammen,

ich habe ein PHP-Skript, welches Daten die von meinem Arduino kommen sollen, in die Datenbank auf der Diskstation schreiben soll. Beim Test das Skript über den Browser aufzurufen, kommt immer die Meldung: "500, Bei der Verarbeitung dieser Anforderung ist ein Fehler aufgetreten."

Jegliche googeleien haben mich zwar zu Lösungen gebracht, allerdings zu keiner, die bei mir funktioniert. Unterschiedliche Einstellungsmöglichkeiten tauchen bei mir dann nicht auf oder Ähnliches.

Ich habe die neuste WebStation installiert mit PHP 7.4 bis PHP 8. Ich habe auch alles einmal neu installiert. Das Skript heißt "dateieingabe.php" und liegt im Ordner "/web".
Als Aufruf im Browser habe ich: "IP-des-NAS/web/dateieingabe.php" als auch ohne "/web" probiert. Wenn ich es falsch schreibe, kommt der gleiche Fehler, weshalb ich davon ausgehe, dass der Aufruf nicht auf die passende Datei verweist...

Ich nutze DSM7.1.

Hat jemand eine Idee? Hat jemand ein "Fahrplan" an welchen ich mich halten kann, um doch noch etwas einzurichten?

Vielen Dank und beste Grüße
Johannes!
 

Ulfhednir

Benutzer
Sehr erfahren
Mitglied seit
26. Aug 2013
Beiträge
3.264
Punkte für Reaktionen
923
Punkte
174

Jrlohni

Benutzer
Mitglied seit
14. Jan 2020
Beiträge
39
Punkte für Reaktionen
0
Punkte
6
Moin,

ja, genau den Beitrag hatte ich auch schon gefunden und schon einmal durchgearbeitet. Allerdings ohne Erfolg.
Zur Sicherheit habe ich es aber grade noch mal gemacht, auch ohne Erfolg.
Ich habe die WebStation (damit auch phpMyAdmin für die Datenbank) deinstalliert, die "web" Ordner gelöscht, Apache deinstalliert und php deinstalliert. Neu gestartet. Browser Cache geleert. Alles wieder der Reihe nach installiert und die DS neu gestartet.

Immer noch der gleiche Fehler. Meine Dockerprojekte sind jetzt nur zusätzlich nicht mehr erreichbar :rolleyes::D

Das Skript sieht wie folgt aus:
PHP:
<?php
$servername = "localhost"; // Hostname deines MySQL-Servers
$username = "Benutzer"; // Benutzername für die Datenbank
$password = "Passwort"; // Passwort für die Datenbank
$dbname = "DBName"; // Name der Datenbank
$table_name = "Tabellenname"; // Name der Tabelle

// Verbindung zur Datenbank herstellen
$conn = new mysqli($servername, $username, $password, $dbname);

// Überprüfen, ob die Verbindung erfolgreich hergestellt wurde
if ($conn->connect_error) {
    die("Verbindung zur Datenbank fehlgeschlagen: " . $conn->connect_error);
}

// Daten aus der GET-Anfrage des Arduino-Skripts empfangen
$query = $_GET['query'];

// SQL-Befehl zum Einfügen der Daten in die Tabelle
$sql = $query;

if ($conn->query($sql) === TRUE) {
    echo "Daten wurden erfolgreich in die Datenbank eingefügt.";
} else {
    echo "Fehler beim Einfügen der Daten: " . $conn->error;
}

// Datenbankverbindung schließen
$conn->close();
?>

Allerdings habe ich es auch mit dem Testskript aus dem genannten Beitrag versucht. Auch das läuft nicht...

Dann habe ich es über "xxx.synology.me/web/test.php", "xxx.quickconnect.to/web/test.php" und "IPADRESSE/web/test.php" getestet. Weiterhin auch jeden der Links ohne "/web". Nichts hat geklappt. Nur bei der Variante mit der IP-Adresse kommt die Meldung: " 500: Bei der Verarbeitung dieser Anforderung ist ein Fehler aufgetreten". Bei den beiden anderen Varianten kam immer die Meldung "Die Website ist nicht erreichbar".

Ich stehe wirklich auf dem Schlauch. Habe mich mit der Materie aber auch noch nie beschäftigt. Die Tutorials klingen immer alle so einfach...
Hier die Einstellungen in der WebStation:
1697880453167.png
1697880528082.png
1697880570997.png


Ich habe auch folgenden Beitrag gefunden: https://www.synology-forum.de/threa...script-auf-der-synology-nas-zum-laufen.96074/

Dort ist leider das Problem, dass ich die Punkte:
- Webstation öffnen über das MEnü oben rechts öffnen.
-- Bei 'allgemeine Einstellungen' prüfen: HTTP-Backend auf Apache, PHP auf die installierte Version.
Bei mir nicht finde, wird wohl an der DSM Version liegen...

Vielen Dank!
 
Zuletzt bearbeitet:

Ulfhednir

Benutzer
Sehr erfahren
Mitglied seit
26. Aug 2013
Beiträge
3.264
Punkte für Reaktionen
923
Punkte
174
Schau doch mal bitte in dem benutzerdefiniertem Profil rein, ob MySQL und Co. aktiv ist.
 

Jrlohni

Benutzer
Mitglied seit
14. Jan 2020
Beiträge
39
Punkte für Reaktionen
0
Punkte
6
1697901339800.png
1697901358884.png

Ich denke du meinst die erweiterungen, richtig?

Bis eben nicht. Ich habe sie jetzt einmal alle aktiviert, hat aber auch keine Besserung gebracht. unter "FPM" und "Kern" habe ich keine einstellungen verändert.
 

Ulfhednir

Benutzer
Sehr erfahren
Mitglied seit
26. Aug 2013
Beiträge
3.264
Punkte für Reaktionen
923
Punkte
174
Deaktiviere mal den PHP-Cache. Wenn das nicht hilft, schau erstmal, ob dein Query vielleicht fehlerhaft ist und reduziere auf das Wesentlichste.

PHP:
<?php

$servername = "";

$username = "";

$password = "";

$db = "";



// Create connection

$conn = mysqli_connect($servername, $username, $password,$db);



// Check connection

if (!$conn) {

   die("Connection failed: " . mysqli_connect_error());

}

echo "Connected successfully";

?>
 


 

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