-1

有没有办法将某种参数添加到数组(但未知变量)?正如您在此处看到的,我事先不知道用户 ID(在 mysql 获取之前),因此我无法正确形成指向编辑页面的链接。

<?php

$box = array ('1'=>"<a href='edit.php?id=/PROBLEM??/'>edit</a>",'2'=>'Cannot edit');


while ($row = mysql_fetch_array($something)) {

?>

<tr>
<td><?php echo $row["Name"]; ?></td>
<td><?php echo $box[$row["editable"]]; ?></td>
</tr>


<?php

}

?>

$row["editable"] 返回 1 或 2,取决于用户是否可编辑时返回的数据库记录。

4

3 回答 3

4

您可以使用sprintf()

$box = array ('1'=>"<a href='edit.php?id=%d'>edit</a>",'2'=>'Cannot edit');

echo sprintf($box[$row["editable"]], ID_HERE)
于 2012-04-18T23:02:52.297 回答
1

就这样搞...

<?php while ($row = mysql_fetch_array($something)) : ?>

<tr>

<td><?php echo $row["Name"]; ?></td>

<?php if( $row["editable"] === 1 ) : ?>
   <td><a href='edit.php?id=<?php echo $row["Id"]; ?>'>edit</a></td>
<?php else : ?>
    <td>Cannot edit</td>
<?php endif; ?>

</tr>

<?php endif; ?>
于 2012-04-18T23:03:26.747 回答
1

尝试str_replace()

$box = array ('1'=>"<a href='edit.php?id=%ID%'>edit</a>",'2'=>'Cannot edit');
$link = str_replace('%ID%', $row["id"], $box[$row["editable"]]);
于 2012-04-18T23:03:43.200 回答