2014-01-07 3 views
0

Я хочу иметь ссылку на другую страницу, с конкретным вопросом, как передать идентификатор?PHP, передающий переменную id через href

<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 в url –

+0

использовать base64_encode, crypt или любую другую кодировку функция в php –

-1

Да, вы можете, это будет рассматриваться как ПОЛУЧЕНИЕ. как пропустить его. Отредактируйте следующее:

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

Это часть:

<?=$sub->id?> 

Вы закрыли PHP тег, когда и начал добавлять 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 даст вам соответствующий предмет идентификатор, с которым вы можете двигаться вперед функциональность.

Примечание: Еогеасп должна начинаться либо вне <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 
} 
Смежные вопросы