Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Вопрос по php как из базы выводить только 100 символов (https://forum.antichat.xyz/showthread.php?t=148931)

9822 17.10.2009 05:10

Вопрос по php как из базы выводить только 100 символов
 
Привет народ, подключаюсь к своей db

$result = mysql_query("SELECT id,title,text,date FROM data ORDER BY date DESC, id DESC LIMIT 3",$db);

к примеру такой запрос

как сказать чтоб в $result попало только 100 символов первых из
таблицы text?

LEE_ROY 17.10.2009 06:12

Код:

SELECT
  LEFT(`text`, 100)
FROM
  data;


9822 17.10.2009 06:29

$result2 = mysql_query("SELECT LEFT(`text`, 100),id,title,date FROM data ORDER BY date DESC, id DESC",$db);

типо так ? ;/

уже по разному ставил не работает :(

LEE_ROY 17.10.2009 08:24

все работает, ты чето химичиш у себя наверно ... :)
что говорит mysql_error() ?

9822 17.10.2009 18:10

Lee_ROY .
твой метод мне не подошел, и у меня не работал не знаю по чему,
я решил данну проблему по другому, протсо написал новую функцию в do где вывожу новости.


if (strlen($myrow2['text']) > 255)
{
$moreThan255 = true;
$myrow2['text'] = substr($myrow2['text'],0,255);
}


теперь работает :)
вдруг нужно будет кому нибуть

nerezus 17.10.2009 18:31

Цитата:

вдруг нужно будет кому нибуть
Зачем? нормальное решение выше дали то.

9822 17.10.2009 23:35

что зачем? то что выше дали у меня не заработало. для тех у кого не заработает есть альтернатива.

9822 18.10.2009 01:08

вовпрос теперь в другом


$result = mysql_query("SELECT id,title,text,date FROM data ORDER BY date DESC, id DESC LIMIT 30",$db);



как к примеру обратится к таблице data, но вытощить РАНДОМАЛЬНО всего 30 записей?



допустим мне надо id 1,14,54,87,33,55,64,89,234,547 и т.д разных.

Isis 18.10.2009 03:49

ORDER BY RAND() LIMIT 30

sowich 19.10.2009 09:32

Цитата:

Сообщение от 9822
Lee_ROY .
if (strlen($myrow2['text']) > 255)
{
$moreThan255 = true;
$myrow2['text'] = substr($myrow2['text'],0,255);
}

Не совсем корректное решение по той причине что 255-й символ может быть в середине слова и соответственно предложение оборвется на пол слове. :)


Время: 10:48