Читая ответы и тот факт, что у вас все еще есть ошибки, я думаю, что в поле sex
можно указать «M» вместо «m».
Вы можете попробовать:
$sql = mysql_query("SELECT * FROM `users`
WHERE UPPER(`sex`) = 'M'
AND `age` > 18
AND `online_stas` = 'online'")
or die(mysql_error());
Я удалил проверку, основанную на вашем заявлении, что вы хотите, чтобы все пользователи-мужчины онлайн были старше 18 лет, но могут быть добавлены снова.Другой возможной ошибкой может быть сравнение age
со строковым значением 18 вместо числового значения 18, поэтому я также изменил это (несмотря на то, что это может работать и преобразовываться автоматически, но лучше проверить с теми же типами, если что-то изменится в будущем).
Попробуйте и скажите, сработало ли это.