2010-02-24 6 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"); 

newbie, need help.je veux attribuer blog_title au titre une idée?smarty attribuer au tableau

Répondre

3

Vous n'avez pas besoin de $tasks. Cette variable désorganise votre script en raison du [] que vous utilisez. [] = fonctionne exactement comme créer un tableau en utilisant array et en lui appliquant array_push.

Voici ce que vous voulez atteindre:

$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"); 
} 

Par ailleurs: dans la première ligne ($result =...), assurez-vous que $id est correctement saisies (voir mysql_real_escape).

+0

thx middus.works comme charme – ruru

0

Vous créez un tableau bidimensionnel qui n'est pas censé être présent. Tâches ressemble à ceci maintenant:

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

Alors vous le faites parce que rien ne $ tasks a seulement $ groupe = tâches $ [ 'BLOG_TITLE'] une touche 0, non 'BLOG_TITLE'. $ group [0] ['blog_title'] fonctionnerait mais supprimerait simplement l'assignation des tâches.

Questions connexes