Quote (default)
Есть хороший видео-курс от Евгений Попова.
УГ. Потом отвыкать заманитесь от попвщины. Читаем:
Уже стал академическим примером, с подачи одного известного горе-кодера такой код:
Quote
$query = "SELECT * FROM table";
$result = mysql_query($query);
$my_row = mysql_fetch_array($result);
do
{
printf ("<div class='my_div'>%s</div>",$my_row["text"]);
}
while($my_row = mysql_fetch_array($result));
Тут целый букет заболеваний.
Самые грубые.
а)Цикл do... while тут некорректен, так как может сложится ситуация, когда не будет записей, удовлетворяющих условию, а цикл совершит интерацию независимо от.
б)Применение printf() тут не к месту, так как функция служит для форматирования значений, а не для организации разметки. Она сложна и непрозрачна в использовании для простого вывода.
в)Неоправдано применение mysql_fetch_array() Если и применять её, то с подобающим случаю флагом. А лучше воспользоваться mysql_fetch_assoc()
Этот код по хорошему должен выглядеть так:
Quote
<?
$sql = "SELECT * FROM `table`";
$result = mysql_query($sql) or die(mysql_error() .'<br/>'. $sql);
while ($row = mysql_fetch_assoc($result))
{
echo '<div class="my_div">'. htmlspecialchars($my_row['text']) .'</div>';
}
Добавлено (12.07.2010, 12:04)
---------------------------------------------
Источник: http://irbis-team.com/15/2/4