Php 我的页面上没有任何内容,但SQL查询和表后的标题除外
我已经排除故障一段时间了,我真的找不到任何答案。基本上是这样的: 当我输入一个真实用户的名字时:除了标题之外,页面上没有发布任何内容 当我输入一个假用户时:在代码中找不到直接从挪威语翻译过来的用户Php 我的页面上没有任何内容,但SQL查询和表后的标题除外,php,sql,Php,Sql,我已经排除故障一段时间了,我真的找不到任何答案。基本上是这样的: 当我输入一个真实用户的名字时:除了标题之外,页面上没有发布任何内容 当我输入一个假用户时:在代码中找不到直接从挪威语翻译过来的用户 <?php include_once("moduler/head.php"); $user = $_GET['user']; $query1 = $con->query("SELECT * FROM players WHERE name='$user'"); echo $con->
<?php
include_once("moduler/head.php");
$user = $_GET['user'];
$query1 = $con->query("SELECT * FROM players WHERE name='$user'");
echo $con->error;
if ($query1->num_rows == 0) {
echo "<h1>Ingen spiller funnet med: $user.</h1>";
return;
}
while ($row == mysqli_fetch_array($query1)) {
$styrkeLvl = $row['styrke'];
$beskyttelseLvl = $row['beskyttelse'];
$bueskytingLvl = $row['bueskyting'];
$trehuggingLvl = $row['trehugging'];
$gruvedriftLvl = $row['gruvedrift'];
$fiskingLvl = $row['fisking'];
$kills = $row['kills'];
$deaths = $row['deaths'];
$rank = $row['rank'];
$money = $row['money'];
$donstatus = $row['donationstatus'];
$lastlogin = $row['lastlogin'];
$regtime = $row['registrationtime'];
$rankName = getRankString($rank);
?>
<h1><?php echo $user; ?></h1>
<table class=\"userView\">
<tbody>
<tr><td>Brukerstatus</td>
<td><?php echo $rankName; ?></td>
</tr>
<tr><td>Donasjon status</td>
<td>D<?php echo $donstatus; ?></td>
</tr>
<tr><td>Styrke level</td>
<td><?php echo $styrkeLvl; ?></td>
</tr>
<tr><td>Beskyttelse level</td>
<td><?php echo $beskyttelseLvl; ?></td>
</tr>
<tr><td>Bueskyting level</td>
<td><?php echo $bueskytingLvl; ?></td>
</tr>
<tr><td>Trehugging level</td>
<td><?php echo $trehuggingLvl; ?></td>
</tr>
<tr><td>Fisking level</td>
<td><?php echo $fiskingLvl; ?></td>
</tr>
<tr><td>Drap</td>
<td><?php echo $kills; ?></td>
</tr>
<tr><td>Dødsfall</td>
<td><?php echo $deaths; ?></td>
</tr>
<tr><td>Sist pålogget</td>
<td><?php echo $lastlogin; ?></td>
</tr>
<tr><td>Registreringsdato</td>
<td><?php echo $regtime; ?></td>
</tr>
</tbody>
</table>
<?php
}
?>
有什么想法吗?我也试着在回声中运行整个过程,但没有结果
谢谢while循环中的所有变量仅在while循环中可用。所以你不能在表格中重复它们。因此将给您一个未定义的变量错误。这同样适用于您试图显示的其他变量 为了避免这种情况,您应该尝试全局声明变量,或者将表放入循环中 另一个问题是,由于double equal==,因此循环中的代码永远不会执行。您应该使用double equal==进行比较,使用single equal=进行赋值
因此,您必须将while$row==mysqli\u fetch\u array$query1更改为while$row=mysqli\u fetch\u array$query1您能尝试转储您的查询吗$query1=$con->querySELECT*从name='$user'的玩家那里;var_dump$query1;请不要在查询中直接使用GET或POST或任何其他未过滤的参数,这是危险的!阅读SQL注入:我会的,但实际上没有错误。我现在做了我自己的,但这样做是为了看看它是否会给我除了它以外的任何错误:echo$kak;这是我唯一一次感谢你提醒我Marco,修正了它:好吧,我使用了var_dump,正如你所说的objectmysqli_result4 5{[current_field]=>int0[field_count]=>int30[Length]=>NULL[num_rows]=>int1[type]=>int0}谢谢大家的帮助,如果还不明显的话,我对PHP还是个新手,我对Java有一些经验,所以我还在学习阶段。这样地?顺便说一句,谢谢你的回答,更进一步了,现在它发布了表数据,但实际变量除外。是的,这样更好。那么,它解决了你的问题还是仍然存在同样的问题?如果它解决了您的问题,请接受答案,否则如果您仍然面临同样的问题,请告诉我们对不起,我应该更具体一些。--这让我走得更远,但并不能真正解决问题。我的意思是,它应该从数据库中给我正确的答案,还是我做错了什么?只是更新了答案,如果您仍然无法在表中看到您的值,请尝试在while循环中执行var_dump$行,看看它是否打印任何内容。谢谢!哦,天哪,在所有这些故障排除之后,问题是我错加了一个额外的等号。我编写了很多java代码,通常是在eclipse中,所以我习惯于每当我做lol的时候IDE都取笑我。在我问这里之前,我花了整整两个小时进行故障排除,无论如何,非常感谢!