2016-06-26 3 views
0

Что не так с моим кодом? Я получаю вывод SQL Error. Если я вхожу в SQL-заявление в PHPMYADMIN, он отлично работает. Не могли бы вы помочь мне, ребята?PHP SQL Statement не работает

<html> 
<body> 
<?php 
require_once ('connection.php'); 
$db_link = mysqli_connect (
    MYSQL_HOST, 
    MYSQL_USER, 
    MYSQL_PW, 
    MYSQL_DB 
); 

$sql ="SELECT ip, username, password from table WHERE available = 1 LIMIT 1" ; 
if ($result = $db_link->query($sql)) { 
    echo "<p>Your login details: </p><table>"; 
    while ($row = $result->fetch_array()) { 
     echo "<tr>"; 
     echo "<td>", "$row[0]","</td>"; 
     echo "<td>", "$row[1]","</td>"; 
     echo "</tr>"; 
    } 
    echo "</table>"; 
    $result->close(); 
} 
else { 
    echo "SQL Error"; 
} 
$db_link->close(); 
?> 
</body> 
</html> 
+0

изменения '' mysqli_connect' к новым mysqli', же все остальное. Первое является процедурной связью, в которой 'link' будет передаваться как аргумент' connection' для каждого процедурного метода, который вы вызываете. Что вам нужно, так это интерфейс «ООП», чтобы вы могли правильно отлаживать методы на фабрике соединений. – Ohgodwhy

ответ

0

Вы подключены к MySQL по процедурному стилю, и вы используете его в качестве объектно-ориентированного стиля

Вы должны следовать один стилю,

Так у вас есть два варианта,

Первый вариант (я рекомендую) изменить объявление соединения на стиль oop (поскольку вы используете Объектно-ориентированный стиль в вашем коде, так что это самый простой способ)

$db_link = new mysqli(MYSQL_HOST, MYSQL_USER, MYSQL_PW, MYSQL_DB) 

Второй вариант (Вы должны изменить все стиль уп изменить процедурный)

$db_link->query() изменение mysqli_query($db_link, $strQuery)

$res->fetch_array() изменения до mysqli_fetch_array($query)

$obj->close() изменение на mysqli_close($db_link)

Дальнейшее чтение о mysqli connection (объектно-ориентированный стиль и процедурный стиль)

Смежные вопросы