Я занимаюсь этим больше часа, я могу подключиться к моей базе данных и всем (не дает никаких ошибок), но я получаю следующую ошибку, когда я пытаюсь использовать «mysql_query ($ query)»;
Call to undefined function mysql_query()
Я уже пробовал включить:
extension=php_mysql.dll extension=php_mysqli.dll
и я добавил:
extension_dir = "ext" extension=php_mysql.dll
в конце списка импорта.
Между каждым изменением, которое я сделал, я перезапустил все процессы в exampp, и после каждого отдельного решения, которое я отдельно пробовал, он все еще вызывает эту досадную ошибку.
Я пробовал смотреть в Интернете, но единственной ошибкой, подобной моей, было бы:
Call to undefined function mysql_connect()
который ни при каких обстоятельствах у меня не было проблем, никогда не видел.
Я спрашиваю об этом здесь, потому что меня рассылают по результатам поиска в Google с указанной выше проблемой; Не тот, который у меня есть.
Мне было бы очень приятно, если бы кто-то помог мне в этом, уроки, которые я нашел онлайн, показывают тот же самый код, который я написал.
PHP 7 избавился от mysql_query()
потому что это проблематично по-разному! API не поощряет хорошие практики, официальная линия заключается в том, что она не поддерживается, и НЕТ ПОДГОТОВЛЕННЫХ ЗАЯВЛЕНИЙ!?! Это, по сути, самая большая проблема в PHP, которая поощряет плохие методы, ведущие к внедрению sql, и это серьезная серьезная ситуация.
Тем не менее, я работаю с устаревшими кодовыми базами, поэтому мне приходится иметь дело с той же ситуацией, что и вы в некоторых случаях. Если у вас небольшая база кода, просто обновите свой метод подключения к db. Если у вас большая база кода, вот что я рекомендую:
Ответ прост, и эта информация была доступна задолго до выпуска PHP 7. Она была удалена, и они предлагают перейти к mysqli или PDO . Полный список изменений, о которых вам нужно знать о миграции, см. В этом руководстве.
mysql_*
были удалены, что означает, что они открыты для переопределения. Вы можете создавать функции-обертки, которые ссылаются на MySqli или PDO . mysql_*
предоставляют только часть функциональности, которую MySQL действительно может предложить. (подумайте о транзакциях, подготовленных операциях, асинхронных запросах и т. д.) Я не говорю, что использование MySqli или PDO будет волшебным образом предотвращать инъекции MySQL, но, по крайней мере, они обеспечивают поддержку со стороны тех видов атак. Остальное зависит от тебя; программист, чтобы точно указать данные там, где это нужно.