Deprecated: mysql_connect

A Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in /home/…

üzenet jelent meg a weboldalamon.

Mit jelent, mit lehet vele tenni?

A deprecated üzenet azt jelzi, hogy a funkció elavult. A PHP 5.6 támogatását a PHP idővel megszünteti. Az újabb 7.x -es PHP-ban nincs mysql_ függvény. A CPanel automatikus frissülésével megjelenhet ez a hibaüzenet azoknál az oldalaknál, ahol még nem tértek át a PHP 7.x használatára és a legutolsó PHP 5.6 verzióba már belekerült ez a figyelmeztető üzenet is.

Amit lehet tenni:

  • Javasolt az üzenetnek megfelelően áttérni PDO vagy MySQLi használatára.
  •  Az újabb PHP verzióra általában a weboldal tulajdonosok nehezen állnak át, mert ehhez fejlesztő alkalmazása szükséges, ha nem valamilyen nyilvános keretrendszert használnak.
    Nyilvános keretrendszereknél (WordPress/JoomlaDrupal) az esetek többségében elegendő a keretrendszert legutolsó verzióra frissíteni.
    A PHP 7.x -es verzióra átállás helyett el is lehet rejteni a PHP warningokat php.ini vagy inkább .user.ini * használatával. Ez azonban nem oldja meg a problémát csak elodázza. Amikor a PHP 5.6 támogatása megszűnik, akkor az az oldal, ami azt használja működésképtelenné válik.
  • Amennyiben az oldal működik régebbi PHP verzióval, akkor vissza lehet állítani a CPanelen a MultiPHP Managerben a PHP verzió számot egy kisebbre. Ezzel mindössze azt lehet elérni, hogy a korábbi verzió még hamarabb fog teljesen elavulttá válni, de ekkor vélhetően nem szükséges elrejteni a hibaüzeneteket.

PHP figyelmeztetések (warning) vagy hibaüzenetek (error) elrejtésről itt írtunk korábban: joomla 1.5 hibaüzenetek elrejtése

*A .user.ini hasonló a php.ini -hez. Ugyanazokat a parancsokat lehet benne használni, hatása azonban rekurzív, vagyis minden az abból a mappából nyíló további mappában is kifejti hatását. A php.ini a cpaneles szervereinken csak arra a mappára volt hatással, amelyikbe elhelyezésre került.