浏览器不显示任何内容-使用PHP进行SQL查询
我不熟悉PHP和SQL,我需要这方面的帮助浏览器不显示任何内容-使用PHP进行SQL查询,php,mysql,no-response,Php,Mysql,No Response,我不熟悉PHP和SQL,我需要这方面的帮助 <!doctype html> <html lang="de"> <head> <meta charset="utf-8"> <link href="styles.css" rel="stylesheet"> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<!doctype html>
<html lang="de">
<head>
<meta charset="utf-8">
<link href="styles.css" rel="stylesheet">
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Holzstern GmbH</title>
</head>
<body>
<div class="left-ctn">
<header>
<nav>
<ul class="navi">
<li><a href="index.php" title="Holzstern GmbH - Home">Home</a></li>
<li><a class="active" href="produkte.php" title="Holzstern GmbH - Produkte">Produkte</a></li>
<li><a href="bestseller.php" title="Holzstern GmbH - Bestseller">Bestseller</a></li>
</ul>
</nav>
</header>
<h1>unsere Produkte</h1>
</div>
<div class="right-ctn">
<a href="index.php" class="logo" title="Holzstern GmbH">Holzstern GmbH</a>
<main>
<?php
$servername = "localhost";
$username = "root";
$password = "";
$database = "schmuckshop";
//Verbindung mit Datenbank herstellen
$connection = new PDO("mysql:host=$servername;dbname=$database;charset=utf8", $username, $password);
//Anfrage vorbereiten und ausführen
$query = $connection->prepare("SELECT schmuck.name AS s_name, schmuck.Preis, lieferant.name AS l_name, schmuck.bild, schmuck.schmuckart, schmuck.edelmetall, schmuck.verfuegbarkeit FROM schmuck, lieferant, verkauft WHERE lieferant.l_id = verkauft.l_id and schmuck.s_id = verkauft.s_id ORDER BY schmuck.s_id");
$query->execute();
$query->setFetchMode(PDO::FETCH_ASSOC);
//Ergebnis zeilenweise auslesen
while($row = $query->fetch()){
$name = $row['s_name'];
$preis = $row['Preis'];
$lieferant = $row['l_name'];
$bild = $row['bild'];
$schmuckart = $row['schmuckart'];
$edelmetall = $row['edelmetall'];
$verfuegbarkeit = $row['verfuegbarkeit'];
echo"
<article class='schmuck'>
<div class='ctn-left'>
<div class='textDiv'>
<p class='name'>$name</p>
<p class='schmuckart'><span>Art: </span>$schmuckart</p>
<p class='material'><span>Material: </span>$edelmetall</p>
<p class='verfuegbarkeit'><span>Auf Lager: </span>$verfuegbarkeit</p>
<p class='preis'>$preis €</p>
</div>
<div class='imgDiv'>
<img class='image' src='images/spiele/$bild' alt='Bild'>
</div>
</div>
<div class='ctn-right'>
<p class='hersteller'>$lieferant</div>
</div>
</article>
";
}//Ende while-Schleife
?>
</main>
</div>
</body>
</html>
我一直在另一个网站上使用此代码,但现在它似乎不起作用。看起来与数据库的连接正常,但在浏览器中不会显示任何内容 有人能看看代码是否有错误吗? 如果你找不到,我可能不得不再次检查连接,但我现在找不到任何错误
我对这一点非常陌生,非常感谢您的帮助或建议。首先检查您的php版本。若您在Linux系统上,为了确认安装了PHP,可以在终端中使用PHP-v 其次,搜索php.ini文件&搜索display_error和error_reporting关键字,并为这些参数输入以下值:
display_error=On;
error_reporting=E_ALL;
第三,如果正在使用apache服务器或xamp/wamp,请重新启动它们
如果您的系统中安装了php,您肯定会找到前进方向的线索。不会显示任何内容吗?你的意思是,浏览器里什么都没有,没有html,没有Zlich?或者您的html缺少一块您认为应该显示在那里的内容?如果您的页面是空白的并且没有显示错误,那么您需要在PHP和MySQL中启用错误报告。如果没有错误报告,您就无法在PHP中开发-否则,您将完全盲目,而我们所做的只是猜测。查看此问题/答案:-另外,我强烈猜测是PDO连接,您说这似乎很好,但不解释原因-因此我建议您另外做一些尝试/捕获,如图所示:此外,最好的db名称;似乎与数据库的连接起作用了。您做了什么调试来确认这一点?一切正常,只是查询有问题,请从应该起作用的表查询中运行简单的Select*,然后调试当前查询。如上所述,在PHP中启用错误报告。这是一条注释,它并不试图实际回答问题。当你有足够的声誉,你将有能力发表评论。同时,请不要发表评论作为答案,因为这些评论可能会被否决,从而延长你建立声誉所需的时间。