Нужна помощь с ошибкой mysql_fetch_array ()? - PullRequest
2 голосов
/ 16 марта 2011

Когда я пытаюсь запустить этот код, я получаю сообщение об ошибке:

"Предупреждение: mysql_fetch_array () ожидает, что параметр 1 будет ресурсом, строка дана"

Я пытался отладитьэто, но я не могу.

это соединение с таблицей с 6 полями:

id (int) |имя (варчар) |изображение (BLOB) |описание (текст) |URL (текст) |ключевые слова (текст)

Может кто-нибудь попытаться это исправить?!?!?!

функция написана ниже ....

function get_images()
{
    $limit = 5;
    $count = 0;

    $row = mysql_fetch_array("SELECT * FROM images");
    echo "<table border='1'>";
    while($row)
    {
    $img = $row['name'];
    if ($count < $limit)
        {
            if($count == 0)
                {
                echo "<tr>";
                }
            echo "<td>$img</td>";
        }
    else
        {
        $count = 0;
        echo "</tr><tr><td>$img</td>";
        }
    $count++;
    }
    echo "</td></table>";
}

Ответы [ 6 ]

4 голосов
/ 16 марта 2011

Вы используете это неправильно:

$result = mysql_query("SELECT * from images");
$row = mysql_fetch_array($result);

Тогда делай, что тебе нужно ...

1 голос
/ 16 марта 2011

Где соединение БД?Вы должны использовать как это;

$result = msql_query('SELECT id, name FROM people', $con);
    if (!$result) {
die('Query execution problem: ' . msql_error());
}

while ($row = msql_fetch_array($result, MSQL_ASSOC)) {
    echo $row['id'] . ': ' . $row['name'] . "\n";
}
1 голос
/ 16 марта 2011

mysql_fetch_array ожидает, что параметр 1 является допустимым объектом запроса mysql.

Итак, сначала вызовите mysql_query.

$query = mysql_query("SELECT * FROM images");
$row = mysql_fetch_array($query);
0 голосов
/ 16 марта 2011

Ваша ошибка здесь:

$row = mysql_fetch_array("SELECT * FROM images");

Вам нужно сделать это:

$sql = "SELECT * FROM images"; 
$res = mysql_query ($sql); 
$row = mysql_fetch_array($res);

Проблема в том, что вы пытаетесь отправить запрос неверным способом, сначала вам нужно выполнить запрос с помощью mysql_query, который возвращает «ресурс», затем использовать этот ресурс и извлечь информацию с помощью mysql_fetch_array.

надеюсь, это поможет:)

0 голосов
/ 16 марта 2011

Вы передали неправильный параметр в mysql_fetch_array ()

function get_images()
{
    $limit = 5;
    $count = 0;
    $resource = mysql_query("SELECT * FROM images"$res);
    $row = mysql_fetch_array($resource );
    echo "<table border='1'>";
    while($row)
    {

        $img = $row['name'];
        if ($count < $limit)
            {
                if($count == 0)
                    {
                    echo "<tr>";
                    }
                echo "<td>$img</td>";
            }
        else
            {
            $count = 0;
            echo "</tr><tr><td>$img</td>";
            }
        $count++;
        }
        echo "</td></table>";
    }
0 голосов
/ 16 марта 2011
$query = mysql_query("SELECT * FROM images");
while ($row = mysql_fetch_array($query)){
 do_something();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...