如何在PHP中传递和获取id

时间:2017-06-20 09:44:17

标签: php sql

我在点击时尝试获取用户的ID,但是现在我的代码出错了我在其他文件中执行了此操作它与我的代码一起工作正常我尝试使用此代码但是不起作用请一些人应该修复我的代码

request.php

<?php

include 'db.php';
if(isset($_GET['id'])){
    $id = $_GET['id'];

$sql = $con->prepare("select * from alert_users_account where id=?");
$sql->bind_param('i',$id);
$sql->execute();
$result = $sql->get_result();
$row = $result->fetch_assoc();

echo $row['id'];

}else{
echo 'error';

}
?>

user.php的

<div class="users_b">
     <?php
     include 'db.php';

        $sq = "select * from alert_users_account";
        $query = mysqli_query($con,$sq);
        $row = mysqli_fetch_assoc($query);

     ?>

     <form action="request.php" method="post">
     <a href="request.php?id=<?php echo $row['id']?>">
     <input type="submit" value="ADD" readonly></a>
     </form>
     </div><?php }?>
     </div>
     </div>

我想在点击提交按钮时传递用户的ID并在request.php中获取id

4 个答案:

答案 0 :(得分:1)

你出错的部分在request.php本身。

您需要触发POST才能触发操作。

<?php

include 'db.php';
if(isset($_POST['id'])){
$id = $_POST['id'];
$sql = $con->prepare("select * from alert_users_account where id=?");
$sql->bind_param('i',$id);
$sql->execute();
$result = $sql->get_result();
$row = $result->fetch_assoc();

echo $row['id'];

}else{
echo 'error';

}


?>

这将确保在单击时,它将触发运行后端查询。

答案 1 :(得分:0)

您的表单使用POST方法,并且您尝试访问$ _GET变量。你应该这样做:

if(isset($_POST['id'])){
    $id = $_POST['id'];

答案 2 :(得分:0)

您可以将?id=<?php echo $row['id']?>放在action标记的form属性中,也可以执行Gwaldhorf Miopau在其答案中所说的内容,但请记住,您必须提供a标记内的form元素name属性,其值为&#34; id&#34;。

答案 3 :(得分:-1)

  1. $db = $pdo->prepare(' SELECT COUNT(*) FROM `alert_users_account` WHERE `id`=:id '); $db->bindParam(':id', $id); $db->execute(); $Users = $db->fetchAll();

  2. 使用准备声明

    try {
    $db->execute(); } catch (PDOException $e) {
    echo '<pre>';
      print_r($e->getMessage());
      $db->debugDumpParams();
    echo "</pre>"; }
    
  3. 使用try / catch查看错误

    <select  ng-model="DataUploadModel.ReportTypeId" class="inp w100">
                    <option value="0" label="Please Select"></option>
                    <option repeat-end="onEnd()" ng-repeat="lst in ReportList" value="{{lst.ID}}">
                       {{lst.ReportTypeName}}
                    </option>
                </select>