Как вытащить информацию из MySQL с помощью PHP? - PullRequest
0 голосов
/ 21 апреля 2009

Я спрашиваю, возможно ли не только извлечь данные из таблицы MySQL, но и отобразить каждую строку в таблице или в DIV, предпочтительно в DIV. Как бы я это сделал?

Таблица:

ID | BodyText | Заголовок |

1 | Hello World1 | Title1 |
2 | Hello World2 | Title2 |
и т.д ..

Я бы хотел поместить каждую строку в DIV, у которого есть заголовок и текст сообщения, но я хочу, чтобы php сгенерировал эти таблицы и поместил информацию в каждый DIV.

Можно сделать?

Ответы [ 4 ]

7 голосов
/ 21 апреля 2009

Мы будем использовать эту таблицу в качестве примера набора данных:

Database Name: friends
-----------------------------
| firstname  ||  lastname  |
----------------------------
|Chris       || Geizz       |
|Steve       || Michalson   |
|Ken         || Bohlin      |  
|Doug        || Renard      | 
-----------------------------

Сначала вы должны подключиться к вашей базе данных следующим образом:

http://www.w3schools.com/PHP/php_mysql_connect.asp

Вы должны выполнить запрос MYSQL, чтобы получить данные из базы данных MySQL:

$query =  mysql_query("SELECT * FROM friends");

Тогда вы использовали бы следующее, чтобы поместить их в таблицу:

echo "<table><tr><td>First Name</td><td>Last Name</td></tr>";

while($row = mysql_fetch_array($query))
{
    echo "<tr><td>";
    echo $row['firstname'];
    echo "</td><td>";
    echo $row['lastname'];
    echo "</td></tr>";
}

echo "</table>";

Что это в основном делает, так это извлекает информацию, возвращаемую моим mysql_query, и помещает ее в массив, который можно вызвать с помощью переменной $ row, которую мы установили. Мы делаем это в цикле while, чтобы он повторялся для всех записей в вашей базе данных.

Код перед циклом while и после цикла while существует таким образом, что он находится в одной таблице, и мы просто создаем строки вместо отдельных таблиц для каждой строки в вашей базе данных.

Это выполнит то, что вы хотите. Когда вы выполняете цикл while, вы можете использовать переменные ($ row ['firstname'] и $ row ['lastname']) по своему желанию. Вы можете поместить их в отдельный DIV, если хотите.

Надеюсь, это поможет вам! Если у вас есть какие-либо вопросы, оставьте комментарий, и я отвечу.

5 голосов
/ 21 апреля 2009

По сути, вы можете делать все, что захотите, если у вас есть набор строк. Общая структура такого кода (если слои не разделены / MVC) выглядит следующим образом:

connect to db
write query
retrieve results

loop for each row in resultset
{
    echo html and column content as you wish
}

так, например, вы можете использовать

foreach ($rowset as $row)
{
    echo '<div>'.$row['column1'].' is a friend of '.$row['column2'].'</div>';
}
0 голосов
/ 21 апреля 2009
<?php
    $result = mysql_query("SELECT * from table");

    if($result && mysql_num_rows($result))
    {
        $numrows = mysql_num_rows($result);
        $rowcount = 1;

        while($row = mysql_fetch_assoc($result))
        {
            print "<div><b>$rowcount</b>";
            foreach($row as $var => $val)
            {
                print"|$var: $val|";
            }
            print "</div>";
            ++$rowcount;
        }
    }
?>
0 голосов
/ 21 апреля 2009

Вот справочные страницы о том, как получить доступ / запросить базы данных MySQL:

Используя эти функции, вы можете легко запрашивать и отображать данные по своему усмотрению. Если вы хотите получить доступ к информации столбца (именам полей), вам нужно либо использовать таблицы доступа information_schema , либо использовать запросы типа описать таблицу .

Обновление: Судя по комментариям, вопрос больше относится к ответу Таркуна, чем этот.

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