Какой лучший способ печати из MySQL с использованием PHP, когда вы знаете, что будет только одна запись?
Мой оператор SQL:
select user from users where user = 'norman';
Это приведет к возврату только одной записи. Так что лучший способ распечатать? Я сейчас делаю:
while ($info=mysql_fetch_assoc($data))
и т.д.
Но это нормально для нескольких записей. Любой лучший способ сделать это, когда есть только один?
Если вы абсолютно уверены, что этот запрос всегда будет извлекать 1 строку, этого должно быть достаточно:
$row = mysql_fetch_assoc(mysql_query($sql));
Затем вы можете манипулировать $row (одна строка) по своему желанию.
Попробуйте следующее:
<?php
include 'config.php';
include 'opendb.php';
$query = "select user from users where user = 'norman";
$result = mysql_query($query);
while($row = mysql_fetch_array($result))
{
echo "Name :{$row['user']}";
}
include 'closedb.php';
?>
$row = mysql_fetch_assoc(mysql_query($sql));
сделайте то, что хотите:
echo $row['value'];
Вам нужно знать заранее, что это вернет одну строку. Вы можете использовать функцию:
function fetch_single_row($sql){
$result = mysql_query($sql);
if (mysql_num_rows($result) > 1){
return false;
}
return mysql_fetch_assoc($result);
}
$row = mysql_fetch_assoc(mysql_query($sql));
, но делает ваш код чище и более устойчивым к ошибкам :-)
Вы можете просто отказаться от времени. Вероятно, это ускорит выполнение на минуту быстрее.
LIMIT 1
в конец запроса.