[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Прошу поправить если не прав
m4a1fox
Доброй ночи уважаемые эксперты. Есть такой вопрос (уточнение). Вот так делаю вывод из БД

$r = mysql_query("SELECT `title`
FROM `data`
WHERE id = '"
.(int)$_GET['view']."'
"
) or die ("Ошибка -". mysql_error());
$d = mysql_fetch_assoc($r);
?>
<table border="0" cellpadding="0" cellspacing="0" width="98%">
<
tr>
<
td colspan="2">
<
div class="underline_title">
<
div class="underline_text">
<?php echo $d['title'];?>
</div>
</
div>
</
td>
</
tr>
</
table>
<
hr />

Не судите стиль. Важно знать ваше мнение о php скриптах. Спасибо.

Или лучше делать так?

$r = mysql_query("SELECT `title`
FROM `data`
WHERE id = '"
.(int)$_GET['view']."'
"
) or die ("Ошибка -". mysql_error());
$d = mysql_fetch_assoc($r);
?>
[size=6]<?php
if ($d)
{
?>[/size]
<
table border="0" cellpadding="0" cellspacing="0" width="98%">
<
tr>
<
td colspan="2">
<
div class="underline_title">
<
div class="underline_text">
<?php echo $d['title'];?>
</div>
</
div>
</
td>
</
tr>
</
table>
<
hr />
[
size=6]<?php }?>[/size]

Собственно вопрос в этих строчках
<?php
if ($d)
{
?>

и

<?php }?>




Спустя 35 минут, 14 секунд (28.03.2011 - 21:09) Invis1ble написал(а):
Предлагаю тебе уточнить, в чем именно заключается твой вопрос, ибо непонятно

Спустя 35 секунд (28.03.2011 - 21:10) inpost написал(а):
m4a1fox
Ничего не понятно, в одном есть условие, в другом - нету. Где вопрос? Если он нужен, то ставь условие, если не нужен - не ставь.

Спустя 19 секунд (28.03.2011 - 21:10) Invis1ble написал(а):
Если ты о стиле, то я например делаю так:
<?php if ($condition) : ?>
<!-- тут вывод -->
<?php endif ?>

Спустя 1 час, 39 минут, 17 секунд (28.03.2011 - 22:50) m4a1fox написал(а):
Вопрос собственно в следующем. У меня на странице выводится текст по определенному id, переданному параметром $_GET['ind'].
На этой же странице в условиях проверки этой самой $_GET['ind'] есть вывод ошибки 404. Так вот. Если мы применим верхний код в первом посте, то вместе с ошибкой появляются лишние поля таблицы.
А если применить второй код, то все выглядит красиво. То есть если ошибка, то вот этот скрипт
$r = mysql_query("SELECT `title`
FROM `data`
WHERE id = '"
.(int)$_GET['view']."'
"
) or die ("Ошибка -". mysql_error());
$d = mysql_fetch_assoc($r);
?>
<table border="0" cellpadding="0" cellspacing="0" width="98%">
<
tr>
<
td colspan="2">
<
div class="underline_title">
<
div class="underline_text">
<?php echo $d['title'];?>
</div>
</
div>
</
td>
</
tr>
</
table>
<
hr />

пропускается, а выводится только ошибка. И вопрос в том, что второй код, с точки зрения php программирования верен или вообще бред?

Спустя 3 минуты, 49 секунд (28.03.2011 - 22:53) Invis1ble написал(а):
Почему бред? Если все корректно срабатывает, но все норм

Спустя 3 минуты, 48 секунд (28.03.2011 - 22:57) m4a1fox написал(а):
Invis1ble
Ну вроде корректно. Как на реальном сервере будет увидим позже smile.gif

Спустя 15 минут, 29 секунд (28.03.2011 - 23:13) PiratXXX написал(а):
Ну я предлагаю так:

$d = mysql_fetch_array($r, MYSQL_ASSOC);
if(count($d)>0) {

Спустя 2 минуты, 44 секунды (28.03.2011 - 23:15) m4a1fox написал(а):
PiratXXX
Тогда почему не так

if (mysql_num_rows ($r) > 0)
{

Спустя 15 секунд (28.03.2011 - 23:16) PiratXXX написал(а):
m4a1fox

а еще и get я думаю надо проверять а то зачем попусту запускать запрос.


if(isset($_GET['view'])) {

Спустя 2 минуты, 42 секунды (28.03.2011 - 23:18) PiratXXX написал(а):
m4a1fox

ну и так тоже можно. Но мне просто больше нравиться так (т.к. поне люблю чето я гонять лишние функции для запроса к sql)
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.