PHP-MYSQL-001

mysql_query()

mysql_* PHP functions

mysql_* was removed from PHP 7. Joomla 4 will not run on PHP that still has it. Direct mysql_query also bypasses Joomla's prefix and ACL.

mysql_query()Joomla DatabaseInterface / mysqli / PDO

Dies at Joomla 3 → 4J3: Works nativelyJ4: Removed — fatalJ6: Removed — fatalBC plugin: no — already dead on J4Architecture change — no auto-fixPHP

What you will see

  • Call to undefined function mysql_query()
  • Call to undefined function mysql_connect()

Symptoms people search

undefined function mysql_query

Replace this code

Swap mysql_query() for Joomla DatabaseInterface / mysqli / PDO.

Joomla 3

Remove or stop calling this

$res = mysql_query('SELECT * FROM jos_users');

Joomla 4 / 6

Use this instead

$db = $this->getDatabase();
$query = $db->getQuery(true)->select('*')->from($db->quoteName('#__users'));
$db->setQuery($query);
$rows = $db->loadObjectList();

How to fix it

  1. 1Replace mysql_* with the Joomla database API and bound parameters.

Also known as

mysql_query · mysql_connect · mysql_fetch

There is no 1:1 swap for this one. The architecture changed. If you cannot rewrite it, Infyways can.

Related issues

Get in touch

Have a project in mind? Let's talk about it.

Tell us what you're building. Whether it's a new site, an online store, a mobile app, or something that needs AI under the hood, we'll get back to you within a business day.

Free consultation
No commitment, no pressure
Reply within 24 hours
Usually much faster

Prefer a direct conversation?

Request a project quote

Tell us about your project

Fill out the quick form and we'll reach out.