Javascript-форум (https://javascript.ru/forum/)
-   Серверные языки и технологии (https://javascript.ru/forum/server/)
-   -   Работа php с запросами. (https://javascript.ru/forum/server/24511-rabota-php-s-zaprosami.html)

Duda.Ml1986@gmail.com 03.01.2012 21:16

Работа php с запросами.
 
Добрый день.
Столкнулся с проблемой.
Вот запрос :
SELECT  SUBSTRING(`text`,1, 300 ) AS first_300 FROM `article`

в sql он работает отлично, выводит как и предполагалось первые 299 символов (за исключением первого)
а вот php выводит ничего! пусто!
Что за беда? Одно радует что сломано предубеждение.
Короче задача в вытягивании первых 299 символов лючого столба таблицы.
П.С. php код не привожу, он работает исправно и в нем нет ошибки.

devote 03.01.2012 21:29

Цитата:

Сообщение от Duda.Ml1986@gmail.com
П.С. php код не привожу, он работает исправно и в нем нет ошибки.

Нуну, если вы себе внушаете эту мысль, то долго будете думать в чем проблема.

Duda.Ml1986@gmail.com 03.01.2012 21:32

Цитата:

Сообщение от devote (Сообщение 147901)
Нуну, если вы себе внушаете эту мысль, то долго будете думать в чем проблема.

select * from `article` limit 12

Вот такой запрос обрабатывается и выводится! Так что проблема не в php

devote 03.01.2012 21:47

Цитата:

Сообщение от Duda.Ml1986@gmail.com
Вот такой запрос обрабатывается и выводится! Так что проблема не в php

Ну если вы считаете что проблема не в ПХП тогда вам нужно сапорт разработчиков мускуля обратиться, раз уж пхп не приделах, значит проблема в мускуле, если запрос написан нормально а мускуль не работает. Либо к разрабам ядра пхп, может в нем что дело.

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

Duda.Ml1986@gmail.com 03.01.2012 21:49

$user="root";
$passwd="";

$link = mysql_connect("localhost", $user, $passwd)
    or die("Could not connect : " . mysql_error());
mysql_select_db("ford") or die("Could not select database");
$query =("select * from `article` limit 12");// работает в php
//("SELECT  SUBSTRING(`text`,1, 300 ) AS first_300 FROM `article`");//не работает а php , но работает в sql
$result = mysql_query($query) or die("Query failed : " . mysql_error());

while ($line = mysql_fetch_array($result, MYSQL_ASSOC)){
	echo $line['text']."<br>";
}


МАНУАЛ

http://msdn.microsoft.com/en-us/library/ms187748.aspx

devote 03.01.2012 21:56

ну может стоит воспользоваться обычным mysql_fetch_assoc. Раз уж вы все равно указываете его.

И зачем скобки вокруг стокового параметра?
Цитата:

Сообщение от Duda.Ml1986@gmail.com
$query =("select * from `article` limit 12");

Впервые вижу такой стиль написания.

devote 03.01.2012 21:57

Цитата:

Сообщение от Duda.Ml1986@gmail.com

Мануал смотрите не на MsSQL а на MySQL http://dev.mysql.com/doc/refman/5.6/...tion_substring

Duda.Ml1986@gmail.com 03.01.2012 23:02

select SUBSTRING(`text` FROM -4 FOR 2) from `article` limit 12
Данная строка не принесла результата хотя sql на них отзывается и выдает результат как и комбинации (брутил)
FROM -4 FOR 2
FROM 0
и другие варианты,
а стиль написания диктует phpmyadmin

Serg_pnz 03.01.2012 23:10

AS first_300 - какой вы ждете $line['text'] от него?

Посмотрите $result так
echo '<pre>';
print_r($result);
echo '</pre>';

devote 03.01.2012 23:32

Цитата:

Сообщение от Serg_pnz
AS first_300 - какой вы ждете $line['text'] от него?

Кстати да, я тоже что-то не досматрел


Часовой пояс GMT +3, время: 04:35.