Class 'mysqli' not found

  • Ab sofort steht euch hier im Forum die neue Add-on Verwaltung zur Verfügung – eine zentrale Plattform für alles rund um Erweiterungen und Add-ons für den DSM.

    Damit haben wir einen Ort, an dem Lösungen von Nutzern mit der Community geteilt werden können. Über die Team Funktion können Projekte auch gemeinsam gepflegt werden.

    Was die Add-on Verwaltung kann und wie es funktioniert findet Ihr hier

    Hier geht es zu den Add-ons

Status
Für weitere Antworten geschlossen.

Ghost108

Benutzer
Registriert
27. Juni 2015
Beiträge
1.278
Reaktionspunkte
76
Punkte
68
Hallo zusammen,

habe eine DS215j mit DSM 6.1-15047 Update 1 und befasse mich erstmals mit der Web Station.
Würde gerne testweise meine Webseite darauf laufen lassen, welche aktuell über Strato läuft.

Habe alle Files vom Strato Webspace übernommen und auf die NAS gepackt.
Wenn ich jetzt die Webseite aufrufe erhalte ich folgende Fehlermeldung:

Fatal error: Uncaught Error: Class 'mysqli' not found in /volume1/web/inc/config.php:30 Stack trace: #0 /volume1/web/index.php(12): include() #1 {main} thrown in /volume1/web/inc/config.php on line 30

Habe die WebStation mit PHP 7.0 laufen und testweise alle Erweiterungen aktiviert.
Jemand ne Idee?
 
Evtl. würde es mit PHP5.5 besser gehen?
Blöde Frage: Hast du auch die gesamten Datenbanken mit importiert?
 
nein, die Datenbank erst Mal nicht - ist auch kein Problem - dann würde ein anderer Fehler erscheinen.
Hier ist ganz klar die Rede davon, dass er die Klasse mysqli nicht findet.

Meine Webseite läuft bei Strato problemlos unter PHP 7.0
 
habe den Fehler gefunden - hatte die extension mysqli nur für php 5.6 aktiviert - nicht für 7.0
sry :/
 
Ah ja, das ist auch nachvollziehbar .. Wo hast du das eig. aktiviert?
 
wo/wie wird das aktiviert?
Danke für einen Hinweis!

DSM 6.1.3-15152 Update 4
 
Unbenannt.jpg

Oben kannst Du zwischen den PHP-Versionen wählen, und unten dann dafür die nötigen Erweiterungen.
 
Danke für die Rückmeldung!

sql.jpg

der Haken bei mysqli hat gefehlt!
Danke!
 
Hallo,

PHP-SCRIPT ausgeführt über Browser fuktioniert problemlos.
Gleiches script über den Aufgabenplaner ausgeführt fürhrt zu folgendem Fehler:
Fatal error: Uncaught Error: Class 'mysqli' not found in /volume1/web/ku/index.php:22

Aufruf über Aufgabenplaner:
/usr/local/bin/php70 /volume1/web/ku/index.php
/usr/local/bin/php64 /volume1/web/ku/index.php

s4.jpg

mysqli ist aktiviert

woran könnte das liegen?

Über einen Hinweis in welcher Richtung ich die Lösung für das Problem suchen muß, würde ich mich freuen.
 
Hallo Stefan,

da ich gestern das selbe Problem hatte und eine Weile gebraucht habe, um durch die Thematik zu steigen. Hier der Lösungsansatz.

Sobald du Php über die Webstation benutzt, werden bestimmte .ini Files verarbeitet (Das was du unter der DSM-Webstation GUI / php-Einstellungen / Zusatzmodule anklickst/festlegst).
Wenn du jetzt Php only über den Terminal nutzt (z.B. CronJob), dann lädt PHP nur seine Standard Inifiles und bestimmte Module (mysqli) sind nicht aktiv.

Hier im Forum habe ich den Thread "Cron mit Php7" gefunden, da wird die genau Vorgehensweise ganz gut erklärt, wie man den PHP Aufruf so gestaltet, das auch die Ini-Files der Webstation mit verarbeitet werden. Danach sollte das Verhalten Php via Browser / Php via Cli identisch sein.

Link:

http://www.synology-forum.de/showth...Cron-mit-PHP-7&p=710343&viewfull=1#post710343
 
Hallo,
Danke für die Rückmeldung!

Bei mir funktioniert der Aufruf über den Aufgabenplaner inzwischen problemlos durch:

wget -q http://192.168.xyz.xy/verzeichnis/script.php

wobei
"verzeichnis" das Unterverzeichnis von DISKSTATION/WEB ist; dort wo das script script.php steht

kein umständlicher cron-job notwendig!
 
Hallo zusammen,

ich möchte mich zunächst einmal vorstellen, weil ich hier neu bin. Ich heiße Andreas und habe vor einigen Wochen angefangen PHP zu lernen.
Ich habe insbesondere das Ziel mit PHP auf einer Webseite Datenbankwerte darzustellen. Alles funktionierte super bis ich Joomla auf meiner DS installierte hatte. Von da ab kam die Fehlermeldung "Fatal error: Class 'MySQLi' not found". Ich habe schon alles versucht und auch sämtliche Beiträge in diesem Forum und auch auf internationalen Seiten gelesen. Ich habe die PHP.INI an verschieden Stellen ergänzt und sogar DSM neu installiert. Selbst das half nicht. Ich bekomme einfach nicht mehr den Zugriff auf meine Datenbank. Die Darstellungen hier über das Installieren des Extensions MySQLi stimmt nicht mit meinem DSM überein. Wahrscheinlich ist meine Version neuer. Über die Abfrage "phpInfo()" werden keine Infos über MySQLi angezeigt. Es wäre sehr nett, wenn mir jemand auf die Sprünge helfen könnte. Meistens reicht schon ein Hinweis über eine Quelle für weiter Infos.

Viele Grüße

Andreas
 
Hallo,
schau mal in Web Station - PHP-Einstellungen - Deine php Version markieren - bearbeiten und dort die benötigten Module anhaken.

Gruß Götz

PS: Herzlich willkommen im Forum.
 
  • Like
Reaktionen: Andys84
Danke für die schnelle Antwort.
In der neusten Version kann man nichts mehr markieren. Man kann dort nur Paramter in Form von „0“ , „1“, „-1“, „True“ oder ähnlich eingeben. Man kann nirgends sehen, welche Paramter angegeben werden müssen.
 
Zuletzt bearbeitet von einem Moderator:
@goetz meint das hier.

Unbenannt.PNG
 
bei mir sieht es so aus:

PHP.jpg


Deswegen bin ich ja auch irritiert; weil es bei euch anders aussieht(DS418j, DSM 6.1.5-15254)

Ich klicke dann auf "Kern" und kann dann die Einstellungen eingeben:

PHP1.jpg
 
Zuletzt bearbeitet:
Hallo,
bekommst Du die Einstellungen wenn Du ein neues Profil anlegst?

Gruß Götz
 
Hallo Götz,

ich hab es noch einmal getestet. Es sieht auch so aus, wenn ein Profil angelegt wird.

Gruß Andreas
 
Zuletzt bearbeitet von einem Moderator:
Ich habe jetzt nochmals alles komplett deinstalliert (php, MariaDB, phpMyAdmin) und anschließend wieder neu installiert.
Es ist zum verzweifeln; der Fehler bleibt. Auf der phpMyAdmin-Oberfläche wird sogar angezeigt, dass mysqli installiert ist.
Hat jemand eine Vorstellung, ob es auch an einer anderen Stelle Fehlerquellen gibt?

Grüße Andreas
 
Status
Für weitere Antworten geschlossen.
 

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