Я пришел к выводу, что моя установка PHP и моя установка MySQL не ладят; Я работаю над созданием своей первой веб-страницы, использующей MySQL для контента, но через два дня, man-страницы, онлайн-документацию и десятки руководств, я просто не могу заставить часть PHP / MySQL работать. У меня есть установленный домашний веб-сервер (я единственный администратор / пользователь), который запускает Apache и размещает мои веб-страницы. У меня установлен MySQL, и я смог создать и запросить базу данных через Terminal. У меня установлен 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 из кода - так что остались только два эха и 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 и используйте mysqli_connect вместо mysql_connect
sudo apt-get install php5-mysql
Найти версию Tomcat с /etc/init.d/. Должен быть файл с именем tomcat7, поэтому 7 - это версия
sudo service tomcat7 stop
sudo service tomcat7 start
Иногда перезагрузка компьютера помогает сортировать другие проблемы. После перезагрузки не забудьте запустить:
sudo service tomcat7 start