我正在尝试将我的数据库结果(用户)转换为可点击的链接,然后这些链接将显示有关select用户的更多信息。现在我使用$ _GET,但userID将显示在地址栏中。有没有办法可以发帖呢?
目前,我有:
//fetch and display the results in table
while ($row = mysqli_fetch_array($result, MYSQL_ASSOC)){
$name = $row["name"];
$id = $row["id"];
//prepare user for GET statement
echo ' <div><a href=mylink.php?id="'.htmlspecialchars($row['id']).'">'.$row['name'].'</a></div> ';}
显示:www.mylink.php?= id“12345”
我不想显示ID。那么纠正这个问题的最佳方法是什么?感谢
答案 0 :(得分:0)
您可以用小格式替换所有超链接:
<form action='mylink.php' method=post>
<input type=hidden value='$id'>
<input class='post_link' type=submit value='$name'>
</form>
CSS可以帮助您重新设置链接等按钮:
.post_link {
background-color: transparent;
border: none;
border-bottom: solid 1px blue;
color: blue;
display: inline;
height: ...;
etc
}
打开新标签页将无法再次显示,您将在悬停时看不到任何状态栏。
答案 1 :(得分:0)
您必须创建一个表单和一个脚本来发布您的数据。像这样:
<?php
while ($row = mysqli_fetch_array($result, MYSQL_ASSOC)){
$name = $row["name"];
$id = $row["id"];
//prepare user for GET statement
echo "<div><a href=\"#\" onclick='javascript:postIt(".htmlspecialchars($row['id']).");'>".$row['name']."</a></div> ";
}
?>
<script>
function postIt(value){
document.forms[0].id.value = value;
document.forms[0].submit();
}
</script>
<form name="blah" action="mylink.php" method="post">
<input type="hidden" name="id">
</form>