PHP通过href传递变量id
我想有一个链接到另一个网页,与特定的主题,我如何才能传递idPHP通过href传递变量id,php,Php,我想有一个链接到另一个网页,与特定的主题,我如何才能传递id <table class="table table-hover"> <thead> <tr> <th>Subject</th> <th>Add Topic</th> </tr> </thead> <tbody>
<table class="table table-hover">
<thead>
<tr>
<th>Subject</th>
<th>Add Topic</th>
</tr>
</thead>
<tbody>
<tr>
<?php foreach($subjects as $sub):?>
<td><?php echo $sub->subject;?></td>
<td><a href='approve.php?id=".$sub->id."' role="button" class="btn">Add Topic</a></td>
</tr>
<?php endforeach;?>
</tbody>
</table>
主题
添加主题
是的,您可以,它将被视为GET。至于如何通过它。
编辑以下内容:
<td><a href='approve.php?id=<?=$sub->id?> ' role="button" class="btn">Add Topic</a></td>
<table class="table table-hover">
<thead>
<tr>
<th>Subject</th>
<th>Add Topic</th>
</tr>
</thead>
<tbody>
<?php foreach($subjects as $sub):?>
<tr>
<td><?php echo $sub->subject;?></td>
<td><a href='approve.php?id=<?php echo $sub->id; ?>' role="button" class="btn">Add Topic</a></td>
</tr>
<?php endforeach;?>
</tbody>
</table>
这部分是:
<?=$sub->id?>
您在开始添加html时关闭了php标记,因此再次打开它以响应php变量 你仍然需要把它重复出来
<?php foreach($subjects as $sub): ?>
<tr>
<td><?php echo $sub->subject ?></td>
<td><a href="approve.php?id=<?php echo $sub->id ?>" role="button" class="btn">Add Topic</a></td>
</tr>
<?php endforeach; ?>
请尝试以下操作:
<td><a href='approve.php?id=<?=$sub->id?> ' role="button" class="btn">Add Topic</a></td>
<table class="table table-hover">
<thead>
<tr>
<th>Subject</th>
<th>Add Topic</th>
</tr>
</thead>
<tbody>
<?php foreach($subjects as $sub):?>
<tr>
<td><?php echo $sub->subject;?></td>
<td><a href='approve.php?id=<?php echo $sub->id; ?>' role="button" class="btn">Add Topic</a></td>
</tr>
<?php endforeach;?>
</tbody>
</table>
主题
添加主题
然后在页面上:approve.php
<?php
$subjectId = $_GET['id'];
?>
$subjectId
将为您提供相应的主题id,您可以使用该id继续使用该功能
注意:foreach应该在
外部开始,在
外部结束,或者可以在
内部。您需要将变量包含在PHP标记中:
<?php foreach($subjects as $sub):?>
<tr>
<td><?php echo $sub->subject;?></td>
<td><a href='approve.php?id=<?php echo $sub->id ?>' role="button" class="btn">Add Topic</a></td>
</tr>
<?php endforeach;?>
如果要将此值传递给数据库,则应执行一些验证:
if ($_GET['id']) { // check parameter was passed
$subject = int_val($_GET['id']) // cast whatever was passed to integer
} else {
// handle no subject case
}
您需要查看$\u GET和$\u POST。我建议不要使用超链接和获取方法请求来更改服务器的状态。我错误地按了enter键:(通过点击回车,表单不会提交!@GordonM好吧,现在我的完整答案就在那里。为什么我仍然是-1?不会重复$sub->idany的值如何在urluse base64_encode、crypt或php中的任何其他编码函数中隐藏id