2014-01-18 3 views
-4

Я хочу получить некоторые записи из таблицы просмотра MySQL на моей веб-странице с помощью PHP. Я использую этот следующий код:Как получить данные MySQL в таблице PHP?

$result="SELECT method,test_name,test_code FROM vtest_ord ORDER BY 
test_ord_id DESC"; 
echo"<table border='1'><thead><tr><th>Method</th><th>Test Name</th><th>Test 
Code</th></tr></thead>"; 
while ($row=$mysql_fetch_assoc($result)) { 
echo "<tr><td>";  
echo "<td>" . $row['method'] . "</td>"; 
echo "<td>" . $row['test_name'] . "</td>"; 
echo "<td>" . 
$row['test_code'] . "</td>"; 
echo "</tr></td>"; } 
echo '</table>'; 

, но я получаю эту ошибку:

Fatal error: Function name must be a string in
C:\xampp\htdocs\test2\ord_view.php on line 211 Method Test Name Test
Code (table header shows)

+0

Ваш вопрос непонятен –

+0

'mysql_fetch_assoc', а не' $ mysql_fetch_assoc' –

+1

вы можете указать, какая строка 211 номер в вашем файле ord_view.php? –

ответ

1

Вам нужна основная логика PHP. у вас есть серьезные ошибки в коде. пожалуйста, попробуйте прочитать основные вопросы программирования.

некоторые ошибки:
1) $mysql_fetch_assoc не является переменной является функцией mysql_fetch_assoc(); вы не можете использовать $ в этом имени.

2) вам нужно выполнить запрос сначала, после чего вы можете извлечь его.

$link = mysql_connect('host_name','db_user_name','db_password'); //fill correct credentials 
mysql_select_db('your_db_name'); //set your database name 
$sql="SELECT method,test_name,test_code FROM vtest_ord ORDER BY 
test_ord_id DESC"; 
echo"<table border='1'><thead><tr><th>Method</th><th>Test Name</th><th>Test 
Code</th></tr></thead>"; 
$result = mysql_query($sql); // execute query 
while ($row=$mysql_fetch_assoc($result)) { 
echo "<tr><td>";  
echo "<td>" . $row['method'] . "</td>"; 
echo "<td>" . $row['test_name'] . "</td>"; 
echo "<td>" . 
$row['test_code'] . "</td>"; 
echo "</tr></td>"; } 
echo '</table>'; 
+0

не работает. такая же ошибка. Благодарю. – Kortoa

+0

Я думаю, что этот потенциал может решить мою проблему. Я использовал все, что вы предлагаете, с помощью while ($ row = mysql_fetch_assoc ($ result)) ", и я получил ошибку" Нет выбранной базы данных Метод \t Имя теста \t Тестовый код (заголовок таблицы) ". Не могли бы вы помочь мне немного. Благодарю. – Kortoa

+0

обязательно :) вы должны проверить подключение к базе данных. попробуйте мой обновленный ответ и дайте мне знать –

1

У вас возникли проблемы с синтаксисом PHP.

  • mysql_fetch_assoc - это функция, и вы называете ее переменной (что здесь ничего не значит).
  • Вы пытаетесь вызвать эту функцию со строкой, но вам нужен ressource, получите через mysql_query.
  • Вам не нужно писать несколько операторов echo, благодаря синтаксису конкатенации.

Потенциальный правильный код:

$sql="SELECT method, test_name, test_code FROM vtest_ord ORDER BY test_ord_id DESC"; 
    echo "[Debug] MethodTest NameTest Code"; 
    $result = mysql_query($sql) or exit(mysql_error()); // Display SQL error if raised 
    while ($row=mysql_fetch_assoc($result)) { 
    echo $row['method'] . " " . $row['test_name'] . " " . $row['test_code']; echo ""; 
    } 

Я также советую вам отказаться от mysql_* и использовать PHP PDO, так как первый один устарел уже несколько лет.

+0

не работает. Благодарю. – Kortoa

+1

Что это значит? –

+0

Я просто использовал ваш код без использования PDO. Я не знаком с PDO. Но это дало мне ошибку отладки, а также ту же самую ошибку msg, как я упоминал ранее. Спасибо за вашу помощь. Пожалуйста, дайте мне что-то другое с PDO. Еще раз спасибо. – Kortoa

0

Попробуйте это, Вам нужно выполнить запрос с использованием mysql_query, Кроме того, mysql_fetch_assoc не $mysql_fetch_assoc функция

$query ="SELECT method,test_name,test_code FROM vtest_ord ORDER BY test_ord_id DESC"; 
    $result = mysql_query($query) or die(mysql_error()); 

Должно быть

while ($row=mysql_fetch_assoc($result)) { 

вместо

while ($row=$mysql_fetch_assoc($result)) { 

Примечание: Использование mysqli_ * функции или PDO вместо использования mysql_ * функции (устаревшее)

Здесь вы можете найти хороший учебник для подключения базы данных MySQL:http://us2.php.net/manual/en/mysqli.query.php

+0

не работает, но смените ошибку на «Нет выбранной базы данных». Благодарю. – Kortoa

+0

Я добавил ссылку ссылки для подключения db и ее учебник –

0

Вы забыли вызвать mysql_query метод.

Тогда вы можете использовать возвращаемый ресурс с помощью функции mysql_fetch_assoc, в которой у вас есть опечатка. Вы рассматриваете его как переменную, а не функцию.

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