2015-10-24 4 views
1

Я пытаюсь подключить свои базы данных к своему онлайн-сайту, и я продолжаю получать эту ошибку для своего кода.PHP Access Denied

Warning: mysqli_connect() [function.mysqli-connect]: (28000/1045): Access denied for user 'DatabaseName'@'28.5.2.24' (using password: YES) in /home/user/public_html/getTemps.php on line 2

и ошибка:

Fatal error: Function name must be a string in /home/username/public_html/getTemps.php on line 3

Вот весь мой код:

<?php 
    $con=mysqli_connect("localhost", "databasename", "password!", "tablename"); 
    $result = $mysqli_query($con, "Selcect * From tablename"); 
    $data = fetch_all($result, MySQLI_ASSOC); 
    echo json_encode($data); 
?> 
+1

'$ mysqli_query'? Также что такое 'fetch_all'? Я не уверен, что последний параметр в вашем mysqli_connect, если это имя базы данных, мне интересно, почему это называется ** tablename **. – Script47

+1

Для начала существует опечатка на слово «Выбрать» –

+0

Его SQL-запрос от php, а другая строка захватывает результаты и возвращает их в определенном формате – JoOlay

ответ

1

Не рекомендуемый способ подключения к базе данных, как это выглядит неаккуратно. Пожалуйста, измените свой «Selcect» перед его запуском. Пожалуйста, прочитайте документацию, так как нет такой функции, называемой «fetch_all». Существует один, но называется «mysqli_fetch_all».

Что я рекомендую вам использовать это

$HOST = ''; 
$USERNAME = ''; 
$PASSWORD = ''; 
$DB = ''; //Your database name 
$link = mysqli_connect($HOST, $USERNAME, $PASSWORD, $DB); 

if (!$link) { 

//your error message 

} 

//Start of your query 
0
<?php 
$con=mysqli_connect("localhost", "databasename", "password!", "tablename"); 
$result = $mysqli_query($con, "Selcect * From tablename"); 
$data = fetch_all($result, MySQLI_ASSOC); 
echo json_encode($data); 
?> 

Изменение выше этого:

<?php 
$con=mysqli_connect("localhost", "username", "password!","databasename"); 
$sql = "SELECT * FROM tablename"; 
$result = mysqli_query($con,$sql); 
$data = fetch_all($result, MySQLI_ASSOC); 
echo json_encode($data); 
?> 

, если вы хотите подключиться, как это, что я не рекомендую определить: хост, имя пользователя, пароль (если установлен) и имя базы данных. Значение tablename является необязательным, но, как вы определяете, в запросе нет необходимости определять это в строке соединения. (Я действительно рекомендую вам сделать так, как это было сказано eddie, и поместить всю информацию строки соединения в переменные. легче работать с.)

как для запроса, опечатка «Selcect» должна быть SELECT.