2014-01-07 166 views
0

我想链接到另一个页面,特别是主题,我如何传递id?PHP通过href传递变量id

<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> 
+1

而且你的麻烦是什么? – Goikiu

+0

是的,你可以传递id – sas

+0

你需要看$ _GET和$ _POST。我建议不要使用超链接和GET方法来改变服务器状态。 – GordonM

回答

0

您仍然需要将其回显出来。

<?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; ?> 
+0

任何想法如何隐藏网址中的id –

+0

使用base64_encode,crypt或任何其他编码函数在PHP中 –

-1

是的,你可以,它会被视为GET。至于如何通过它。 编辑如下:

<td><a href='approve.php?id=<?=$sub->id?> ' role="button" class="btn">Add Topic</a></td> 

这是部分:

<?=$sub->id?> 

您关闭PHP的标签当u开始添加HTML因此再次打开它呼应PHP瓦尔。

+0

以下是什么? – GordonM

+0

我按错误输入:( – MJoraid

+0

通过点击输入表格不提交! –

0

请尝试以下方法:

<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,使用它可以与前进功能。

注:的foreach应该开始外线<tr>和结束外</tr>,也可以是内部<tr> </tr>

0

您需要附上变量在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;?> 

还有一个在大多数PHP服务器上启用短形式的回显标记<?= $variable ?>

在随后的页面上,您从GET阵列:

$subject = $_GET['id']; 

如果你这个值传递到数据库中,你应该做一些验证:

if ($_GET['id']) { // check parameter was passed 
    $subject = int_val($_GET['id']) // cast whatever was passed to integer 
} else { 
    // handle no subject case 
}