我遇到了$ _GET方法的问题。我从数据库&中检索了一些关于网页管理员的数据。我为用户添加了一个超链接,以获取有关它们的信息。
这是我第一页中的代码:
<?php if(($adminlevel)==1){
echo '
<h4 class="widgettitle">List of admins</h4>
<table class="table responsive">
<thead>
<tr>
<th>Admin Level</th>
</tr>
</thead>
'; getAdmins(); echo '
</table>
';
}else{
echo '<h4 class="widgettitle">You dont have permission to see this table</h4>';
}
?>
<div class="divider15"></div>
getAdmins()功能如下:
<?php
function getAdmins(){
global $con;
$get_admin = "select * from admins order by id";
$run_admin = mysqli_query($con,$get_admin);
while($row_admin = mysqli_fetch_array($run_admin)){
$id_admin = $row_admin['id'];
echo "
<tbody>
<tr>
<td>Trident</td>
<td class='center'><a href='editlevel.php?id=$id_admin' title='Clik to change admin level' target='_blank'>$adminlevel_admin</a></td>
</tr>
</tbody>
";
}
}
?>
如您所见,我通过 getAdmins()函数将用户从第一页链接到另一个名为 editlevel.php 的页面。
因此我制作了这样的超链接:
<a href='editlevel.php?id=$id_admin'>$adminlevel_admin</a>
这里是 editlevel.php 页面:
<body>
<?php
if (isset($_GET['id_admin'])){
$result_id = $_GET['id_admin'];
$get_result = "select * from admins where id='$result_id'";
$run_result = mysqli_query($con,$get_result);
while($row_result= mysqli_fetch_array($run_result)){
$id_target = $row_result['id'];
$username_target = $row_result['username'];
$adminlevel_target = $row_result['adminlevel'];
$email_target = $row_result['email'];
echo '
<div class="mainwrapper">
<div class="header">
'; include "php/php_includes/overall/header.inc.php"; echo'
</div>
<div class="leftpanel">
';include "php/php_includes/overall/leftpanel.inc.php"; echo '
</div><!-- leftpanel -->
<div class="rightpanel">
'; include "php/php_includes/gadgets/rightpanel.editlevel.php"; echo '
</div><!--rightpanel-->
</div><!--mainwrapper-->
';
}
}
?>
</body>
所以基本上我使用if (isset($_GET['id_admin'])){
来获取用户点击的项目的结果&amp;尝试通过那个从数据库中检索该项目的数据..但问题是我的屏幕上没有出现任何问题。没有错误消息&amp;没有结果。如果您知道我该如何解决,请告诉我们!
答案 0 :(得分:1)
您的链接似乎是:
<a href='editlevel.php?id=$id_admin'>$adminlevel_admin</a>
应该是:
<a href='editlevel.php?id_admin=$id_admin'>$adminlevel_admin</a>
为了使用它:
if (isset($_GET['id_admin'])){
$result_id = $_GET['id_admin'];
编辑:不言而喻,您永远不应该信任用户输入(例如$_GET
)。在用于SQL查询之前,应验证并清理这些值。