Храните новости от mysql в массиве php! - PullRequest
0 голосов
/ 04 августа 2009

У меня есть следующий скрипт:

$cbid = 0;
    $arrayid = 0;
    while ($FINDNEWSresult = mysql_fetch_array($FINDNEWSquery)) {
        echo "<tr>";
        // Prvi stolpec - označevanje (checkbox)
        echo "<td class=\"middlerow checkbox\"><input id=\"" . $FINDNEWSresult['NEWSid'] . "\" type=\"checkbox\" /></td>";
        echo "<td class=\"middlerow\"><a class=\"ahover\" href=\"?mod=news&command=edit&edit=true&id=" . $FINDNEWSresult['NEWSid'] ."\">" . substr($FINDNEWSresult['NEWStitle'], 0, $MOD_NEWStextlimit)  . "</a></td>";
        echo "<td class=\"middlerow\"><a class=\"ahover\" href=\"?mod=news&command=edit&edit=true&id=" . $FINDNEWSresult['NEWSid'] ."\">" . substr($FINDNEWSresult['NEWStext'], 0, $MOD_NEWStextlimit) . "</a></td>";
        echo "<td class=\"middlerow\">" . $FINDNEWSresult['NEWSuser'] . "</td>";
        echo "<td class=\"middlerow\">" . $FINDNEWSresult['NEWSdate'] . "</td>";
        echo "</tr>";
        $NEWSarray = array ( $arrayid => array ( "Id" => $FINDNEWSresult['NEWSid'],
                                                 "Title" => $FINDNEWSresult['NEWStitle'],
                                                 "Text" => $FINDNEWSresult['NEWStext'],
                                                 "User" => $FINDNEWSresult['NEWSuser'],
                                                 "Date" => $FINDNEWSresult['NEWSdate']
                                                )
                            );
        // Povecaj $cb zarad checkbox id
        $cbid++;
        $arrayid++;
    }

Как изменить скрипт, этот массив будет заполняться каждой новостью? В настоящее время в массиве хранятся только последние новости.

Спасибо за помощь!

Ответы [ 2 ]

1 голос
/ 04 августа 2009

Вам нужно добавить массив, а не создавать его заново.

$NEWSarray[] = <new_element> ;

или

array_push($NEWSarray, <new_element>);
1 голос
/ 04 августа 2009

Как это:

$cbid = 0;
        $arrayid = 0;
        $NEWSarray = array(); // Not necessary but good for clarity
        while ($FINDNEWSresult = mysql_fetch_array($FINDNEWSquery)) {
                echo "<tr>";
                // Prvi stolpec - oznacevanje (checkbox)
                echo "<td class=\"middlerow checkbox\"><input id=\"" . $FINDNEWSresult['NEWSid'] . "\" type=\"checkbox\" /></td>";
                echo "<td class=\"middlerow\"><a class=\"ahover\" href=\"?mod=news&command=edit&edit=true&id=" . $FINDNEWSresult['NEWSid'] ."\">" . substr($FINDNEWSresult['NEWStitle'], 0, $MOD_NEWStextlimit)  . "</a></td>";
                echo "<td class=\"middlerow\"><a class=\"ahover\" href=\"?mod=news&command=edit&edit=true&id=" . $FINDNEWSresult['NEWSid'] ."\">" . substr($FINDNEWSresult['NEWStext'], 0, $MOD_NEWStextlimit) . "</a></td>";
                echo "<td class=\"middlerow\">" . $FINDNEWSresult['NEWSuser'] . "</td>";
                echo "<td class=\"middlerow\">" . $FINDNEWSresult['NEWSdate'] . "</td>";
                echo "</tr>";
                $NEWSarray[] = array ( $arrayid => array ( "Id" => $FINDNEWSresult['NEWSid'],
                                                                                                 "Title" => $FINDNEWSresult['NEWStitle'],
                                                                                                 "Text" => $FINDNEWSresult['NEWStext'],
                                                                                                 "User" => $FINDNEWSresult['NEWSuser'],
                                                                                                 "Date" => $FINDNEWSresult['NEWSdate']
                                                                                                )
                                                        );
                // Povecaj $cb zarad checkbox id
                $cbid++;
                $arrayid++;
        }

В качестве альтернативы [] вы можете использовать PHPs array_push .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...