浏览器不显示任何内容 - SQL 使用 PHP 查询
Browser doesn't show anything - SQL Query with PHP
我刚开始使用 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" />
<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 版本。 (要确认 PHP 已安装,您可以在终端中使用 php -v
,如果您使用的是 Linux 系统。)
其次,搜索 php.ini 文件并搜索 display_error
和 error_reporting
关键字并在下面输入这些参数的值:
display_error=On;
error_reporting=E_ALL;
第三,重新启动您的 Apache 服务器(或 xamp/wamp,如果您正在使用它们)。
如果您的系统中安装了 php,您肯定会知道下一步该往哪里前进。
我刚开始使用 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" />
<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 版本。 (要确认 PHP 已安装,您可以在终端中使用 php -v
,如果您使用的是 Linux 系统。)
其次,搜索 php.ini 文件并搜索 display_error
和 error_reporting
关键字并在下面输入这些参数的值:
display_error=On;
error_reporting=E_ALL;
第三,重新启动您的 Apache 服务器(或 xamp/wamp,如果您正在使用它们)。
如果您的系统中安装了 php,您肯定会知道下一步该往哪里前进。