2010-02-24 53 views
0
$result = mysql_query("SELECT blog_title,body FROM blog WHERE post_id='$id' LIMIT 1") or die (mysql_error()); 

while ($line = mysql_fetch_assoc($result)){ 
$tasks[] = $line; 
$group = $tasks['blog_title']; 
$smarty->assign('view', $tasks); 
$smarty->assign('group', $group); 
//here the error.i want to assign blog_title to title 
$smarty->assign('title', "Blog - $group"); 

新手,需要幫助。我想分配blog_title到標題 任何想法?smarty分配到陣列

回答

3

你不需要$tasks。由於您正在使用[],此變量會混淆您的腳本。 [] =就像使用array創建一個數組並將array_push應用於它一樣。

這裏就是你想達到什麼:

$result = mysql_query("SELECT blog_title,body FROM blog WHERE post_id='$id' LIMIT 1") or die (mysql_error()); 

while ($line = mysql_fetch_assoc($result)){ 
    $group = $line['blog_title']; 
    $smarty->assign('view', $line); 
    $smarty->assign('group', $group); 
    $smarty->assign('title', "Blog - $group"); 
} 

順便說一句:在第一行($result =...),確保$id是合適的逃逸(見mysql_real_escape)。

+0

thx middus.works喜歡的魅力 – ruru 2010-02-24 12:37:38

0

您創建了一個不應該存在的2維數組。任務看起來像現在這樣:

<?php 
tasks = array(
     0 => array(
     'blog_title' => 'something' 
     'body' => 'something else' 
    ) 
    ) 
?> 

所以,你做$組= $任務[「BLOG_TITLE」]它什麼也不做,因爲$任務只有一個鍵0,而不是「BLOG_TITLE」。 $ group [0] ['blog_title']會起作用,但完全刪除任務分配。