Работа php с запросами.
Добрый день.
Столкнулся с проблемой. Вот запрос : SELECT SUBSTRING(`text`,1, 300 ) AS first_300 FROM `article` в sql он работает отлично, выводит как и предполагалось первые 299 символов (за исключением первого) а вот php выводит ничего! пусто! Что за беда? Одно радует что сломано предубеждение. Короче задача в вытягивании первых 299 символов лючого столба таблицы. П.С. php код не привожу, он работает исправно и в нем нет ошибки. |
Цитата:
|
Цитата:
select * from `article` limit 12 Вот такой запрос обрабатывается и выводится! Так что проблема не в php |
Цитата:
Вообщем либо делайте что пишу выше, либо пример запроса на пхп показывайте и мы уже посмотрим. Идеальных программистов не бывает, все мы делаем ошибки и при этом уверяем себя в ином. |
$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 |
ну может стоит воспользоваться обычным mysql_fetch_assoc. Раз уж вы все равно указываете его.
И зачем скобки вокруг стокового параметра? Цитата:
|
Цитата:
|
select SUBSTRING(`text` FROM -4 FOR 2) from `article` limit 12
Данная строка не принесла результата хотя sql на них отзывается и выдает результат как и комбинации (брутил) FROM -4 FOR 2 FROM 0 и другие варианты, а стиль написания диктует phpmyadmin |
AS first_300 - какой вы ждете $line['text'] от него?
Посмотрите $result так echo '<pre>'; print_r($result); echo '</pre>'; |
Цитата:
|
Цитата:
while ($line = mysql_fetch_array($result, MYSQL_ASSOC)){ echo "<pre>".print_r( $line, true )."</pre>"; } |
devote, это я уже поторопился, не пропустив $result через mysql_fetch_array или подобное.
PS: строго говоря для print_r цикл не нужен. |
Цитата:
|
Цитата:
<?php //= Query ========================// $sql=mysql_query("select * from table1"); //= Closed while ====================// /*everytime it fetches the row, adds it to array...*/ while($r[]=mysql_fetch_array($sql)); echo "<pre>"; //= Prints $r as array =================// print_r ($r); //=============================// echo "</pre>"; ?> |
А вообще стал замечать, что с фреймворками тупеешь потихоньку: создал запрос, получил массив, а что там внутри...
|
Цитата:
|
Цитата:
вот так работает. В помощь var_dump Всем спасибо. |
Часовой пояс GMT +3, время: 12:01. |