Intereting Posts
Как установить wkhtmltopdf с привязками PHP в Linux (centos) Как заставить php-скрипт удалять себя (и включает в себя dir) Получите фид продукта magento, используя Mangento rest api, но ошибка OAuth Необходимое руководство по перенаправлению пользователя, если он не вошел в систему на панели администратора preg_replace () заменить второе вхождение Декодирование запутанного исходного кода PHP Как преобразовать регулярное выражение PHP в соответствие арабским символам с регулярным выражением JS как удалить запятую с конца строки? Поддержка Emojis в уведомлении Apple push как передать переменную из шаблона php в javascript PHP – простой способ чтения одной записи из MySQL Обнаруживать, разрешены ли cookie в PHP Как обновить статус строки с помощью jQuery change () и отобразить в соответствующей таблице Как отправить форму на загрузку страницы без нажатия кнопки отправки? Статические методы в PHP

Подключение к mysql с использованием php

Вот мой следующий учебный код от «Изучение PHP MYSQL и Javascript» от OReilly.

<?php //require_once = 'login.php'; $db_database = 'publications'; $db_hostname = 'localhost:8888'; $db_username = 'root'; $db_password = 'root'; $db_server = mysql_connect($db_hostname, $db_username, $db_password); if(!$db_server) die("Unable to connect to MYSQL: ". mysql_error()); mysql_select_db($db_database) or die("Unable to connect to database: " . mysql_error()); $query = "SELECT * FROM classics"; $result = $mysql_query($query); if(!$result) die ("Could not query: " . mysql_error()); $rows = mysql_num_rows($result); for($j = 0; $j < $rows; ++$j) { echo 'Author: ' . mysql_result($result, $j, 'author') . '</br>'; echo 'Title: ' . mysql_result($result, $j, 'title'). '</br>'; echo 'ISBN: '.mysql_result($result, $j, 'isbn').'</br>'; } ?> 

Тем не менее, я получаю сообщение об ошибке при попытке подключения. Браузер говорит, что это ошибка 500 (что действительно не так полезно). Когда я $db_username = 'root'; $db_password = 'root'; строки $db_username = 'root'; $db_password = 'root'; $db_username = 'root'; $db_password = 'root'; Я получаю еще одну ошибку: «Не удается подключиться к базе данных: доступ запрещен для пользователя« @ »localhost» к публикациям базы данных ».

Может ли кто-нибудь помочь диагностировать проблему?

Благодаря!

Изменить это

 $result = $mysql_query($query); 

к этому

 $result = mysql_query($query); 

Имя функции – mysql_query не $mysql_query , $ используется в именах переменных.

Кроме того, вместо того, чтобы пытаться «видеть» ваш код сразу в окне браузера, вы можете использовать командную строку PHP вместо этого. Если ваш файл называется foo.php вы выполните coudl:

 >> php foo.php PHP Notice: Undefined variable: mysql_query in /var/www/foo.php on line 17 PHP Fatal error: Function name must be a string in /var/www/foo.php on line 17 

Как вы видите, сообщение об ошибке довольно ясно. Из-за использования $mysql_query он думает, что mysql_query – это переменная, но такая переменная где-то не определена.

Вы пытаетесь подключиться вручную к своему db по настройке соединения, установленной в коде,

сначала используйте phpmysql для подключения к db, измените файл конфигурации phpmysql, чтобы он соответствовал запросу проверки подлинности сервера mysql, а затем убедитесь, что все правильно, прежде чем что-либо кодировать.

напишите это

 mysql_select_db($db_database, $db_server) 

вместо

 mysql_select_db($db_database) 

И напишите это

 $result = mysql_query($query); 

вместо

 $result = $mysql_query($query); 

Еще одна вещь, пожалуйста, проверьте ваше имя хоста: $db_hostname = 'localhost:8888';

В общем случае это $db_hostname = 'localhost:8080';

Поэтому, пожалуйста, подтвердите еще раз

Прекратите использование mysql_connect() !

Вы не должны использовать эту или другие связанные функции, связанные с этим расширением.

Он обесценивается и удаляется в PHP 7.0.0 и выше. Альтернативой является использование PDO или MySQLi . Ниже приведен пример сценария для подключения к MySQL с использованием PDO:

 <?php /* Connect to a MySQL database using driver invocation */ /* DSN options: http://php.net/manual/en/ref.pdo-mysql.connection.php Error handling options: http://php.net/manual/en/pdo.error-handling.php Learn how to secure against SQL injection attacks: http://php.net/manual/en/pdo.prepared-statements.php */ $user = 'myusername'; $pass = 'mypassword'; $host = 'localhost'; $mydb = 'mydatabase'; $dsn = "mysql:dbname=$mydb;host=$host"; try { $dbh = new PDO($dsn, $user, $pass); } catch (PDOException $e) { echo 'Connection failed: ' . $e->getMessage(); } ?> 

$ символ должен использоваться только для переменных, не относящихся к функциям

 $var=5;// variable declaration 

если вы хотите объявить синтаксис функции $, не следует использовать
Пример:

 $function_var = mysql_query($query); 

В этой function_var является переменной и mysql_query($query) является функцией.

вы можете сделать это, как показано ниже:

 <?php $conn = mysqli_connect("localhost","root",""); if (!$conn) { die("Connection failed:".mysqli_connect_error()); } $db = mysqli_select_db($conn,"Database_name"); if(!$db) { echo "Connection failed"; } ?>