Undefinierte Funktion mysql_connect()

Lesezeit: 4 Minuten

Undefinierte Funktion mysql connect
Benutzer1765369

Ich bin gerannt aptitude install php5-mysql (und MySQL/Apache 2 neu gestartet), aber ich erhalte immer noch diesen Fehler:

Schwerwiegender Fehler: Aufruf der undefinierten Funktion mysql_connect() in /home/validate.php in Zeile 21

phpinfo() sagt, dass die Datei /etc/php5/apache2/conf.d/pdo_mysql.ini geparst wurde.

  • Wie wäre es mit anderen eingebauten PHP/MySql-Funktionen? Arbeiten Sie?

    – Samayo

    11. Dezember 2012 um 17:16 Uhr

  • Vielleicht nicht, da ich versucht habe, einen falschen Benutzer/Pass einzugeben, und meine ‘or die’-Anweisung nicht angezeigt wird!

    – Benutzer1765369

    11. Dezember 2012 um 17:22 Uhr

Undefinierte Funktion mysql connect
rubo77

Falls Sie PHP7 bereits verwenden, die ehemals veralteten Funktionen mysql_* wurden vollständig entfernt, daher sollten Sie Ihren Code mit den PDO-Funktionen oder aktualisieren mysqli_* funktioniert stattdessen.

Wenn das nicht möglich ist, als Problemumgehunghabe ich eine kleine PHP-Include-Datei erstellt, die die alte nachbildet mysql_* funktioniert mit mysqli_*()-Funktionen: fix_mysql.inc.php

  • Perfekte Lösung für meinen Fall, ich konnte noch nicht einfach upgraden und meinen gesamten vorhandenen Code beschädigen. Die globale $con-Variable in Ihrer Datei war jedoch ein Problem, da die enthaltene Datei die globale Variable der übergeordneten Klasse nicht lesen konnte, in deren Konstruktor ich sie eingefügt habe. Ich habe jedoch bei Bedarf einfach eine Verbindungsvariable in den Funktionen der enthaltenen Datei erstellt. Jetzt funktioniert mein Code einwandfrei. Danke.

    – Zeeshan

    1. Januar 2018 um 10:04 Uhr


  • Danke … es hat mir das Leben gerettet, als die Produktion auf php7 aktualisiert wurde und die php5-Anwendung zusammenbrach

    – geekonweb

    5. April 2019 um 1:47 Uhr


  • Dies ist eine großartige Problemumgehung, um Zeit zu sparen, wenn Sie eine alte PHP-Anwendung aktualisieren müssen. Danke vielmals.

    – Joel Karunungan

    19. April 2020 um 11:22 Uhr

1646826848 868 Undefinierte Funktion mysql connect
Sarcastron

Ich sehe, dass Sie dies mit Ubuntu markiert haben. Höchstwahrscheinlich ist der MySQL-Treiber (und möglicherweise MySQL) nicht installiert. Angenommen, Sie haben SSH oder Terminalzugriff und sudo-Berechtigungen, melden Sie sich beim Server an und führen Sie Folgendes aus:

sudo apt-get install mysql-server mysql-client php5-mysql

Wenn die MySQL-Pakete oder das Paket php5-mysql bereits installiert sind, werden sie dadurch aktualisiert.


AKTUALISIEREN

Da diese Antwort immer noch gelegentlich angeklickt wird, werde ich sie aktualisieren, um sie einzuschließen PHP7. PHP 7 erfordert ein anderes Paket für MySQL, daher sollten Sie ein anderes Argument für den Befehl apt-get verwenden.

# Replace 7.4 with your version of PHP
sudo apt-get install mysql-server mysql-common php7.4 php7.4-mysql

Und was wichtig ist, mysql_connect() ist seit PHP v5.5.0 veraltet. Siehe die offizielle Dokumentation hier: PHP: mysql_connect()

  • Ich erhalte Paket php7.0 kann nicht gefunden werden

    – seltsame Zeiten

    28. Mai 2017 um 22:24 Uhr

  • Ersetzen Sie 7.0 durch 7.3

    – rubo77

    27. Mai 2020 um 16:38 Uhr

  • bei mir war es: sudo apt-get install php7.4-mysql && sudo service apache2 restart

    – Laurent Debricon

    24. Februar 2021 um 16:51 Uhr


1646826848 37 Undefinierte Funktion mysql connect
wanovak

Nun, das ist Ihre Chance! Es sieht aus wie PDO ist bereit; benutze das stattdessen.

Versuchen Sie zu überprüfen, ob das PHP-MySQL-Erweiterungsmodul geladen wird:

<?php
    phpinfo();
?>

Wenn es nicht vorhanden ist, fügen Sie Folgendes hinzu php.ini Datei:

extension=php_mysql.dll

  • Ist dies ein besserer Weg, um eine Verbindung zu einer Datenbank herzustellen? Ich werde es mir ansehen, aber ich würde es wirklich gerne zuerst zum Laufen bringen, da es zuvor funktioniert hat, bis ich auf einen neuen Server umgezogen bin.

    – Benutzer1765369

    11. Dezember 2012 um 17:15 Uhr

  • Es ist. mysql_* Funktionen sind gefährlich und seit PHP 4.1 veraltet. Überprüfen Sie Ihre Apache-Fehlerprotokolle und starten Sie den Server neu. Funktioniert es?

    – wanovak

    11. Dezember 2012 um 17:16 Uhr

  • Ich verwende xampp, nachdem ich diese Zeile zu php.ini hinzugefügt habe, erhalte ich die folgende Meldung in Apache error.log Dynamische Bibliothek ‘\\xampp\\php\\ext\\php_mysql.dll kann nicht geladen werden

    – 0x777

    9. Januar 2016 um 1:17 Uhr


  • @defmx Existiert die DLL-Datei unter diesem Pfad? Wenn nicht, müssen Sie es installieren.

    – wanovak

    18. Januar 2016 um 21:26 Uhr

1646826849 88 Undefinierte Funktion mysql connect
kujiy

Falls hier jemand mit dem Problem käme docker php offizielle bildergeben Sie den folgenden Befehl in den Docker-Container ein.

$ docker-php-ext-install mysql mysqli pdo pdo_mysql

Weitere Informationen finden Sie unter dem obigen Link How to install more PHP extensions Abschnitt (Aber es ist ein bisschen schwierig für mich …).

Oder dieses Dokument kann Ihnen helfen.

https://docs.docker.com/samples/library/php/

Undefinierte Funktion mysql connect
Apurva Sharma

Ich hatte auch das gleiche Problem mit undefined MySQL_connect(). Ich habe versucht, Änderungen in der PHP.ini-Datei vorzunehmen, aber es gab mir den gleichen Fehler. Dann kam ich zu dieser Lösung, wo ich meinen Code von veralteten PHP-Funktionen zu neuen Funktionen änderte.

$con=mysqli_connect($host,$user,$password);

mysqli_select_db($con,dbname); 
//To select the database

session_start(); //To start the session

$query=mysqli_query($con,your query); 
//made query after establishing connection with database.

Ich hoffe, dies wird dir helfen . Diese Lösung funktioniert bei mir richtig.

BEARBEITEN:

Wenn Sie ein Upgrade von altem PHP durchführen, müssen Sie dies tun apt-get install php7.0-mysql

1646826850 902 Undefinierte Funktion mysql connect
Peter Mortensen

Versuchen:

<?php
  phpinfo();
?>

Führen Sie die Seite aus und suchen Sie nach mysql. Wenn nicht gefunden, führen Sie Folgendes in der Shell aus und starten Sie den Apache-Server neu:

sudo apt-get install mysql-server mysql-client php5-mysql

Stellen Sie außerdem sicher, dass alle folgenden Zeilen irgendwo in Ihrer Datei apache2.conf (oder in Ihrer Datei conf.d/php.ini) auskommentiert sind

;extension=php_mysql.so

zu

extension=php_mysql.so

1646826851 864 Undefinierte Funktion mysql connect
Bhargav Rao

In der php.ini-Datei

ändere das

;extension=php_mysql.dll

hinein

extension=php_mysql.dll

982270cookie-checkUndefinierte Funktion mysql_connect()

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy