Ich verwende LAMPP mit Ubuntu 64 Bit. Wenn ich versuche, eine PHP-Datei über das Terminal auszuführen, wird der Fehler „undefiniert mysql_connect“ angezeigt. Aber alles funktioniert einwandfrei, wenn ich den Browser zum Laden meiner PHP-Datei verwende. Ich habe versucht, die php.ini zu bearbeiten, indem ich das Semikolon vor „extension=mysql.so“ entfernt habe, und dann lampp neu gestartet, aber mit dem Fehler „Dynamische Bibliothek konnte nicht geladen werden“. Was kann ich tun, um dieses Problem zu lösen? Das ist wichtig für mich, weil ich mein PHP-Skript mit crontab ausführen muss.
Danke schön.
PHP Fatal error: Call to undefined function mysql_connect() in /opt/lampp/htdocs/setrandomport-message.php on line 15
extension=msql.so
PHP Startup: Unable to load dynamic library '/opt/lampp/lib/php/extensions/no-debug-non-zts-20090626/msql.so' - /opt/lampp/lib/php/extensions/no-debug-non-zts-20090626/msql.so: cannot open shared object file: No such file or directory in Unknown on line 0
Antwort1
Es klingt, als wären Sie verwirrt, weil Sie zwei verschiedene PHP-Versionen haben.
Sie haben die Version, die Teil Ihres Lampp-Pakets war, /opt/lampp/
und Sie haben die PHP-CLI, die Sie über den Paketmanager installiert haben. Die kurze Antwort lautet: Installieren Sie das PHP5-MySQL-Modul einfach auch über den Paketmanager apt-get install php5-mysql
.
Sie können Module verschiedener PHP-Versionen nicht mischen und anpassen. Wenn Sie sich für zwei separate Installationen entscheiden, müssen Sie diese separat verwalten.