实际上,我是HTML,CSS和PHP的初学者。我有用于添加和注册课程的简单网站。应该将用户添加到网站中并将课程发布在网站上,以便用户可以浏览和注册。
实际上,我的问题是如何从数据库中调用课程名称,以及如何根据需要用HTML代码格式化课程名称。
这是课程页面,内容是网站上可用课程的列表(请注意,这只是HTML代码,我这样做是为了查看页面的外观)
页面截图:
如您所见,第一页包含许多此HTML代码,使用以下代码将课程列表添加到网站中:
<div class="card card-1">
<a href="http://127.0.0.1/project2/course details/course1.php">
<img src="http://127.0.0.1/project2/icons/coursepic.jpg" alt="Avatar" style="width:101% "></a> <div class="container">
<h4 class="textstyle"><b>Operating System</b> </h4>
<p class="textstyle">Free Course</p>
</div>
</div>
我想用PHP做什么?
我想编写一个PHP代码,用课程名称(数据库中每个可用课程的课程费用)替换P和h4。
请注意:每门课程的图片都来自我的电脑,无需从数据库中调用图片。
我试图编写如下的PHP代码:
<div>
<div class="card card-1">
<a href="http://127.0.0.1/project2/course details/course1.php">
<img src="http://127.0.0.1/project2/icons/coursepic.jpg" alt="Avatar" style="width:101% "></a> <div class="container">
<?php
include_once("db.php");
$result = mysqli_query(OpenCon(), "SELECT Course_Name,cost FROM `course`");
//while($res = mysql_fetch_array($result)) { // mysql_fetch_array is deprecated, we need to use mysqli_fetch_array
while($res = mysqli_fetch_array($result)) {
echo "<p>".$res['Course_Name']."</p>";
echo "<p>".$res['cost']."</p>";
}
?>
</div>
</div>
</div>
这是我的结果:
可以,但是我希望样式像第一个屏幕截图一样。每个课程都应该有图片。
之后,当用户单击课程名称时。我想转到另一个包含课程详细信息的页面(对于用户单击的同一课程),这也是我的数据库所需要的
像这样:
我希望任何人都只能帮助我解决此问题,我只能在2天内解决此问题。很抱歉,如果我的解释不好。
提前感谢大家。
答案 0 :(得分:0)
将代码放入PHP循环中.....
所以,这个
<div class="card card-1">
<a href="http://127.0.0.1/project2/course details/course1.php">
<img src="http://127.0.0.1/project2/icons/coursepic.jpg" alt="Avatar" style="width:101% ">
</a>
<div class="container">
<h4 class="textstyle"><b>Operating System</b> </h4>
<p class="textstyle">Free Course</p>
</div>
</div>
成为(在清理了一点代码之后-我认为您并不是要在其中使用两个<p>
,但我把它们留在了上面以便可以看到。请注意,对段使用不同的行会可以轻松了解自己的财产。)
include_once("db.php");
$result = mysqli_query(OpenCon(), "SELECT Course_Name,cost FROM `course`");
$count = 0;
while($res = mysqli_fetch_array($result)) {
$count ++;
// NOTE: Here is the LOOP! - not outside the query, but INSIDE it
// First you 'jump out' of PHP, going back to HTML
?> <!-- now you are in HTML (when you need PHP again, you 'jump in' and 'jump out' as needed - see the code below....) -->
<div class="card card-<?php echo $count;?>">
<a href="http://127.0.0.1/project2/course details/course<?php echo $count;?>.php">
<img src="http://127.0.0.1/project2/icons/coursepic.jpg" alt="Avatar" style="width:101% ">
</a>
<div class="container">
<h4 class="textstyle">
<b><p><?php echo $res['Course_Name'];?></p></b>
</h4>
<p class="textstyle">
<p><?php echo $res['cost'];?></p>
</p>
</div>
</div>
<?php // we are in PHP again....
}
这应该可以满足您的要求-尽管我会更进一步(嗯,不止一个...),并尽可能地发挥这种动态作用。
为此,我假设:
如果没有图片,我们将默认使用'coursepic'...
现在,代码更加动态!
include_once("db.php");
$result = mysqli_query(OpenCon(), "SELECT id,Course_Name,cost FROM `course`");
while($res = mysqli_fetch_array($result)) {
// NOTE: Here is the LOOP! - not outside the query, but INSIDE it
// First you 'jump out' of PHP, going back to HTML
?> <!-- now you are in HTML (when you need PHP again, you 'jump in' and 'jump out' as needed - see the code below....) -->
<div class="card card-<?php echo $res['id']?>">
<a href="http://127.0.0.1/project2/course details/course<?php echo $res['id']?>.php">
<?php
$pic = "http://127.0.0.1/project2/icons/coursepic.jpg";
if(file_exists("http://127.0.0.1/project2/icons/course" . $res['id'] . ".jpg") {
$pic = "http://127.0.0.1/project2/icons/course" . $res['id'] . ".jpg";
}
<img src="<?php echo $pic; ?>" alt="Avatar" style="width:101% ">
</a>
<div class="container">
<h4 class="textstyle">
<b><p><?php echo $res['Course_Name'];?></p></b>
</h4>
<p class="textstyle">
<p><?php echo $res['cost'];?></p>
</p>
</div>
</div>
<?php // we are in PHP again....
}
请注意,这是基本的“购物车”程序,您可能会在职业生涯中多次(多次)使用它。
快乐编码!