[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Помогите подправить код пожалуйста
OrlenkoKN
Приветствую всех.
Помогите пожалста немного код доделать: надо в общем чтобы он вытаскивал из бд данные и производил вывод в виде таблицы в 3 колонки, знаю где у меня эррор, а догнать уже верное решение не получается...
Вот код в общем:
       $res = mysql_query("Select * from Blogg where userid=$userid and status=1 order by datetime desc"); 
$art = mysql_fetch_array( $res );
$i=0;
$table="<table border=0 width=100% align=center>";
do {
if(($i==0)||!($i% 3)) $tr='<tr>';
$i++;
$all=$all."<td width='33%' align='center' style='border:1px solid #6B9DCE; padding:10px'>
<img src='http://snapcasa.com/get.aspx?code=8055&size=m&url=http://"
.$user[0].".site.su/posting/".$art['translite']."-template129'/><br>
<a href='http://"
.$user[0].".site.su/post/".$art['translite']."'>".$art['name']."</a>
</td>"
;
if(!($i% 3)||(mysql_num_rows($res)==$i)) $trb = '</tr>';
}
while( $art = mysql_fetch_array( $res ) );
$tableb = "</table>";

$result3.=$table.$tr.$all.$trb.$tableb;

Неверная запись у меня в последенй строке вывода.. Для чего это сцепление нужно - на странице просто идёт вывод постов и в соответствии с определёнными парметрами пользователя - выводятся разные виды вывода постов..
Переменная result3 участвует в выборке именно поэтому мне необходимо весь вывод таблицы занести в переменную..

В общем сейчас идёт неверное подставление, например идёт вывод
<table><tr><tr><td>Квадрат1</td><td>Квадрат2</td><td>Квадрат3</td><td>Квадрат4</td></tr></tr></table>

Помогите исправить плз)



Спустя 1 час, 52 минуты, 36 секунд (13.11.2009 - 09:40) twin написал(а):
Очень внимательно посмотри на это. И найди стопицот отличий. И выкинь курсы Попова на помойку.

Спустя 9 минут, 42 секунды (13.11.2009 - 09:50) Oyeme написал(а):
	$result = mysql_query("Select * from Blogg where userid={$userid} and status=1 order by datetime desc") or die(mysql_error()); 

$table="<table border=0 width=100% align=center>";

$i=0;
while($art = mysql_fetch_array( $result )) {
$i++;
$table.= $i == 0 ? '<tr>' : '';

$table.= "<td width='33%' align='center' style='border:1px solid #6B9DCE; padding:10px'>
<img src='http://snapcasa.com/get.aspx?code=8055&size=m&url=http://"
.$user[0].".site.su/posting/".$art['translite']."-template129'/><br>
<a href='http://"
.$user[0].".site.su/post/".$art['translite']."'>".$art['name']."</a>
</td>"
;
if($i % 3 == 0 ){
$i = 0;
$table.= '</tr>';

}
}

echo $table;



Спустя 2 часа, 19 минут, 38 секунд (13.11.2009 - 12:09) OrlenkoKN написал(а):
Цитата
И выкинь курсы Попова на помойку.

а что - так влияние заметно?=) Я с него начал, счас исправляюсь)

Спасибо всем за советы - ссылка хорошая!
Переделал код:

		$sql = "Select * from Blogg where userid=$userid and status=1 order by datetime desc"; 
$res = mysql_query($sql);
$i=0;
$table = "<table border=0 width=100% align=center>\n";
while ($art = mysql_fetch_assoc($res))
{
if(($i==0)||!($i%3)) $table .= "<tr>";
$i++;
$table .= "<td width='33%' align='center' valign=top style='padding:10px 0'>
<a href='http://"
.$user[0].".site.su/post/".$art['translite']."' style='cursor:pointer'><img src='http://snapcasa.com/get.aspx?code=8055&size=m&url=http://".$user[0].".site.su/posting/".$art['translite']."-template129' style='border:1px solid #6B9DCE'/></a>
<br>
<a href='http://"
.$user[0].".teneta.su/post/".$art['translite']."'>".$art['name']."</a></td>";
if(!($i% 3)||(mysql_num_rows($res)==$i)) $table .= "</tr>";
}
$table .= "</table>\n";
}


ну и дальше уже вывод..

Oyeme, спасибо за код - в будующем обязательон воспользуюсь!

Спустя 52 минуты, 1 секунда (13.11.2009 - 13:01) ИНСИ написал(а):
OrlenkoKN я так понял ты вытаскиваешь 1 запись? вот это вернет по идее 1
where userid=$userid

так зачем тебе цикл?

и как маленький, совет. Пиши запросы понятно, где надо большими буквами, где надо бери в апострофы. В общем, как пример вот снизу:

        $sql = mysql_query("
SELECT *
FROM `Blogg`
WHERE `userid` = '
{$userid}' AND `status` = '1'
ORDER BY `datetime` DESC
"
) or die(mysql_error());

Спустя 17 минут, 41 секунда (13.11.2009 - 13:19) Gabriel написал(а):
$sql = "Select * from Blogg where userid='".intaval($userid)."' and status='1' order by datetime desc"; 

если значение числовое, а если букавки то так
$sql = "Select * from Blogg where userid='".mysql_real_escape_string($userid)."' and status='1' order by datetime desc"; 

Спустя 2 минуты, 39 секунд (13.11.2009 - 13:22) OrlenkoKN написал(а):
welbox2, условие where userid=$userid - вытаскивает посты, которые принадлежат определённому пользователю.. в том-то и дело что вытаскиваются все его записи и их надо было разбить по 3 в ряд..
Если быть точнее, то в данной задаче нужно было выводить превью постов, то есть, непосредственно скриншот страницы, вот так и получается - по 3 скриншота в ряд)

Цитата
и как маленький, совет

Спасибо - учту обязательно wink.gif

Спустя 7 часов, 29 минут, 17 секунд (13.11.2009 - 20:51) ИНСИ написал(а):
OrlenkoKN ясно =) но тогда еще маленький совет.
это
 where userid=$userid 

смени на
WHERE `author` = '{$userid}' 


ну, просто я обычно так разделяю. Тут ясно, что надо вытащить автора и т.д.... wink.gif

Спустя 2 часа, 27 минут, 12 секунд (13.11.2009 - 23:18) OrlenkoKN написал(а):
Всем ещё раз БОЛЬШОЕ спасибо! Хороший у вас форум!=)

Спустя 14 часов, 54 минуты, 1 секунда (14.11.2009 - 14:12) miller написал(а):
Здравствуйте всем... Помогите пжалуйста....

у меня есть корзина... Табличная часть в ней формируется так:

{section loop=$cart_content name=i}
<tr bgcolor=white>
<td>
{if $cart_content[i].product_code ne ""}[{$cart_content[i].product_code}] {/if}{$cart_content[i].name} </td>
<td
align=center><input type="text" name="count_{$cart_content[i].id}" size=5 value="{$cart_content[i].quantity}"></td>
<td
align=center>{$cart_content[i].cost}</td>
<td
align=center><a href="index.php?shopping_cart=yes&remove={$cart_content[i].id}"><img src="images/remove.jpg" border=0 alt="{$smarty.const.DELETE_BUTTON}"></a></td>
</tr>

{/section}


$cart_content[i].product_code - содержит код товара
$cart_content[i].quantity - его количество

необходимо передать методом POST на сайт www.site.ru информацию о товаре в этой корзине. Для передачи списка товаров в форме используется поле goods. Формат поля следующий:
ID_товара=Кол-во,ID_товара2=Кол-во2, ...


<form method="POST" action="http://www.site.ru">
<input
type="hidden" name="action" value="cartTransfer">
<input
type="hidden" name="goods" value="ID_товара=Кол-во,ID_товара2=Кол-во">
<input
type="submit" value="Приступить к оформлению заказа">
</form>


как мне собрать все данные о товарах в одну строку и запихать их в поле goods для передачи?
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.