Как вывести с базы заданое количество символов?

12
Ilekor
На сайте с 22.04.2009
Offline
138
946

Здравствуйте, всегда хотел узнать какую функцию нужно прописать, что бы вывести заданное количество символов с базы MySQL.

К примеру в базу занесено 1300 символов.

Мне нужно вывести краткое описание примерно 250 символов.

Пример запроса с помощью которого надо вытащить:


SELECT * FROM data order by функция
Лучший дорген 21 века AgDor(http://agdor.info)
Maxouni
На сайте с 18.11.2008
Offline
119
#1


$res = mysql_query(Запрос);
while($r = mysql_fetch_object($res))
{
echo substr($r->имя_поля,0,250);
}

А такой вариант не подходит?

Создание, продвижение, поддержка сайтов и приложений.
Ilekor
На сайте с 22.04.2009
Offline
138
#2
Maxouni:

$res = mysql_query(Запрос);
while($r = mysql_fetch_object($res))
{
echo substr($r->имя_поля,0,250);
}

А такой вариант не подходит?

Нет, не идет так как вывод немного другой.


$result103 = mysql_query("SELECT * FROM data order by rand() limit 10",$db);

if (!$result103)
{
echo "<p>Запрос на выборку данных из базы не прошел. Напишите об этом администратору сайта ksdron@ukr.net <br /> <strong>Код ошибки:</strong></p>";
exit(mysql_error());
}
if (mysql_num_rows($result103) > 0)
{
$myrow103 = mysql_fetch_array($result103);

do
{
printf ("<h1 id='rand_name'><a href='view_post-%s.html'>%s</a></h1>
<p><a href='view_post-%s.html'><img src='%s' alt='%s' title='%s' width='75' height='100' id='rand_img' /></a></p>
<div id='rand_text'>%s</div>",$myrow103["id"],$myrow103["title"],$myrow103["id"],$myrow103["mini_img"],$myrow103["title"],$myrow103["title"],$myrow103["description"]);


}

while ($myrow103 = mysql_fetch_array($result103));

}

else
{
echo "<p>Информация по запросу не может быть извлечена в таблице нет записей.</p>";
exit();
}
DI
На сайте с 03.01.2007
Offline
123
#3

http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_substring

Вот только причем тут ORDER BY?

Но в случае с кодом выше проще все же substr($myrow103["description"],0,250), чтобы не перечислять все поля в запросе.

Высказывание идиотского утверждения требует на порядок меньше усилий, чем его последовательное и обоснованное опровержение и более того, иногда это опровержение вообще невозможно. © (http://zhurnal.lib.ru/s/shapiro_m_a/raspidiota.shtml)
SP
На сайте с 20.05.2008
Offline
56
#4

Для этого в MySQL можно функцию SUBSTRING использовать

Делаю небольшие заказы на php, perl, js/ajax, delphi; парсеры, простые сайты с админкой, установка\настройка sape, wordpress и др. Мой Блог (http://www.seoproger.ru)
Ilekor
На сайте с 22.04.2009
Offline
138
#5

Как данный запрос в моем коде сделать? Покажите на пальцах, пожалуйста.

Таггу x_x
На сайте с 31.10.2005
Offline
445
#6

Зачем substr? Можно left, быстрее будя :)

☠️☠️☠️
tommy-gung
На сайте с 22.11.2006
Offline
300
#7

SELECT SUBSTRING(имя_поля, 0, 250) AS имя_поля FROM data;
Здесь не могла быть ваша реклама
DI
На сайте с 03.01.2007
Offline
123
#8
Ilekor:
Как данный запрос в моем коде сделать? Покажите на пальцах, пожалуйста.

Что непонятного в моем сообщении? Там даже переменная из кода указана.

PS: всегда интересовали такие вопросы :)

Ilekor:
Здравствуйте, всегда хотел узнать какую функцию нужно прописать

Вы теперь знаете функцию, и что? Что Вам дало это знание? Если Вы, скорее всего, даже не различаете в написанном, где там sql, где php, а где html. Почему бы сразу не написать «нужно сделать то-то, я совсем не умею, помогите»?

tommy-gung
На сайте с 22.11.2006
Offline
300
#9
Tarry:
Зачем substr? Можно left, быстрее будя

так?

 SELECT LEFT(имя_поля, 250) AS имя_поля FROM data;  
Таггу x_x
На сайте с 31.10.2005
Offline
445
#10

tommy-gung, ну да, а что, не пашет?

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий