Я пришел к выводу, что моя установка PHP и установка MySQL не уживаются; Я работаю над созданием моей первой веб-страницы, которая использует MySQL для контента, но после двух дней, man-страниц, онлайн-документации и десятков учебников, я просто не могу заставить работать часть PHP / MySQL. У меня установлен домашний веб-сервер (я единственный администратор / пользователь), на котором работает Apache и размещаются мои веб-страницы. У меня установлен MySQL, и я смог создать и запросить базу данных через терминал. У меня установлен PHP, и я могу использовать echo для печати текста в документе. Однако когда я работаю с MySQL, все меняется…
У меня есть страница, которая содержит материал для инициализации. содержит несколько абзацев в жестком коде HTML, а затем код PHP для доступа к MySQL. Когда я впервые загрузил страницу, все, что получилось, было пустой страницей. Я закомментировал раздел PHP и перезагрузил его, чтобы подтвердить, что обычный HTML все еще работает, что он и сделал. Поэтому какая-то часть PHP не давала загружаться какой-либо странице.
Чтобы начать устранение неполадок в моем коде, я оставил весь комментарий к PHP-коду, кроме следующего кода для соединения с сервером, который адаптирован из нескольких различных руководств:
<?
echo("<p>PHP is working</p>");
$ses = mysql_connect("localhost","username","password");
if(!$ses){
echo("<p>Connection to content server failed.</p>");
exit();
}
echo("<p>Database Connected</p>");
?>
Когда страница загружается, начальный HTML-код загружается в дополнение к абзацу с надписью «PHP работает», но не появляется сообщение об ошибке или об ошибке. Я удалил структуру If из кода - так, чтобы остались только два echos и mysql_connect - и получил тот же результат.
Кажется, что функция mysql_connect заставляет сервер перестать загружать код при запуске, но у меня нет идей, как это исправить. Для справки: я изменил файл php.ini, добавив в него строку «connection = msql.so», и использую MySQL 5.5, Apache 2.2.22, PHP 5.3.10, Ubuntu 12.04. Кроме того, и мой маршрутизатор, и модем были настроены для переадресации порта 3306 на сервер - хотя я не вижу, как это должно быть необходимо - и мои имя пользователя и пароль MySQL были проверены трижды и идентичны тем, которые я успешно использую в Терминале.
Что мне не хватает?
php5-mysql
?Ответы:
Все выглядит хорошо, поэтому я думаю, что ваша установка не завершена. Для взаимодействия mysql и php вам необходимо установить
php5-mysql
пакет:источник
Установите
php5-mysql
пакет и используйте mysqli_connect вместо mysql_connectисточник
Найти Tomcat-версию от
/etc/init.d/
. Должен быть файл с именем tomcat7, следовательно 7 - версияИногда перезагрузка машины помогает в решении других проблем. После перезагрузки не забудьте запустить:
источник