如何在 while 循环中单击图像时发送隐藏的详细信息

how to send hidden details when click on image in while loop

这是我的代码

while ($row = $result->fetch_assoc())
{
$imgpath=$row['image_name'];
$id=$row['id'];
<input type="hidden" name="Id" value="' . $row['Id'] . '" >

这里,当我点击发送 ID 到下一页时

<img src="'.$imgpath.'" height="170" width="600" title="album-name" class="img-responsive" alt=" " />
}

我可以用表格吗?

试试这个:

<a href="pageName.php"><img src="'.$imgpath.'" height="170" id=id="requestthis" width="600" title="album-name" class="img-responsive" alt=" " /></a>

<input type="hidden" id="hidden_user_id">

你可以这样使用 JS:

<script type="text/javascript">
$(function() { //ready function
    $('#requestthis').on('click', function(e){ //click event
        e.preventDefault(); //prevent the click from redirecting you to "submitrequest.php"

        var hidden_id = $('#hidden_user_id').val();
        var url = "submitrequest.php?hidden_id="+hidden_id;

        window.location.replace(url);
        //OR 
        //window.location.href = url;
    })
})

您可以使用 .base64_encode 这将使 ID 安全:

<a href="pageName.php?id='.base64_encode($id)'"><img src="'.$imgpath.'" height="170" width="600" title="album-name" class="img-responsive" alt=" " /></a>

jQuery AJAX 将完成这项工作。您只需要将点击事件的事件处理函数附加到图像。我们不需要 hidden element,我们会将 $row['id'] 附加到 <img> 元素的 id 属性,然后在点击时,我们 post 通过Ajax。

试试这个:

//First, make the id attribute of the <img> equal to $id($row['id'])
<img src="'.$imgpath.'" id="$id" height="170" width="600" title="album-name" class="img-responsive" alt=" " />

然后,添加事件处理程序:

$('body').on('click','img',function(){
  var id = $(this).attr('id');// Get the id
  $.post( "target.php", {id : id}, function( data ) {//Post the id to the target page
     //Do whatever..
  });
});