-1

ある種のパラメーターを配列に追加する方法はありますか(まだ不明な変数)?ここでわかるように、(mysqlフェッチの前に)userIDを事前に知らないため、編集ページにつながるリンクを適切に形成できません。

<?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 に答える