В моем коде есть ссылка href, которая вызывает new_requisition.php, и я также отключаю ее, если она не выполняет аргумент. Код ниже:
<?php
if ($row['req_status']=='Approved'){
echo '<a href="new_requisition.php?cid=<?php echo $cid;?>" class="btn btn-block btn-primary">
<i class="glyphicon glyphicon-shopping-cart text-blue"></i>
Add New Request
</a>';
} else {
echo "Not allowed to raise a PR";
}
?>
$cid
устанавливается с $_POST
следующим образом:
$cid=$_POST['cid'];
Я успешно получаю значение, передаваемое с предыдущей страницы, так как это определяет данные, отображаемые на этой странице, но я не могу передать их на следующую страницу.
Моя проблема в том, что я не могу заставить его пройти $cid
переменная. Когда я нажимаю на это, я получаю:
new_requisition.php?cid=<?php%20echo%20$cid;?>
Вместо new_requisition.php?cid=3
например, это создает мне проблемы, так как мне нужно вставить CID в базу данных.
Есть идеи, что мне не хватает?
используйте этот код,
if ($row['req_status']=='Approved'){
echo "<a href='new_requisition.php?cid=".$cid."' class='btn btn-block btn-primary'>
<i class='glyphicon glyphicon-shopping-cart text-blue'></i>
Add New Request
</a>";
} else {
echo "Not allowed to raise a PR";
}
Вы повторяете теги PHP, когда не должны. Выход должен быть:
echo '<a href="new_requisition.php?cid='.$cid.'" class="btn btn-block btn-primary">
Вместо этого вам нужно использовать конкатенацию, так как ?>
PHP-тег внутри href
блок заставляет ваш PHP выходить рано.