Foreach循环,只显示数组的最后一个元素

时间:2013-09-16 18:58:40

标签: php loops foreach

我在这个网站上看到了一些答案,但没有一个适用于我的特定问题。

我在我的后端php中查询:

$query = sprintf("SELECT * FROM player_gear WHERE player_name = '%s'",
         mysql_real_escape_string($user_name));
$result = mysql_query($query);

while($row = mysql_fetch_array($result))
{     
    $_SESSION['output'][] = $row;
}

然后重定向到前端并显示结果:

foreach ($_SESSION['output'] as $row ) 
{ 
    echo $row['gear_name']);
}

现在,如果我想显示其他基地的一些信息,我需要使用从上面的查询获得的名称,我会这样做:

function gear_description ($gear_name) {
$query = sprintf("SELECT description FROM gear WHERE name = '%s'",
    mysql_real_escape_string($gear_name));
$result = mysql_query($query);
list($description) = mysql_fetch_row($result);
return $description;
}

现在我想在网站的任何地方调用该函数,而不仅仅是在foreach循环内!我想回复这个函数echo gear_description ($row['gear_name'])如何控制从该循环中选择哪个$row['gear_name']


编辑:我正在使用javascript onmouseover和一些函数在一个小盒子里显示我的结果:

foreach ($_SESSION['output'] as $row ) 
{

?>

<form action='../model/inventory.php' method='post'>
<input type='hidden' name='id' value='<?php text($row['id']); ?>' />
<input onmousemove="ShowContent('oprema_info'); return true;" 
       onmouseover="ShowContent('oprema_info'); return true;" 
       onmouseout="HideContent('oprema_info'); return true;" 
type='image' id='slikice' SRC='../graphic/<?php text($row['oprema_ime']); ?>.png' /> <?php text($row['vrednost']);  ?>
</form>
<?php
}

一切正常,但我不知道如何回应<div id="oprema_info"> <?php text(opis_opreme($row['oprema_ime'])); ?> </div>,因为我不知道如何在鼠标上选择正确的$ row ['oprema_ime']结果......所以这个我的问题是更复杂的形式

0 个答案:

没有答案