[英]I want to display different content based on page_id, but on every page 'echo page_id' result is the same
我有一個包含頁面及其子頁面的動態網站。 頁面的結構來自 page.php,子頁面來自 subpage.php 文件。 我的問題是,如何為 page_id=5 的子頁面提供不同的結構?
可以說,子頁面的內容如下:
<div class="a">
<div class="b">
<h1>some text</h1>
<img src="">
</div>
</div>
但如果子頁面父頁面 id 為 5,則內容應該類似於
<div class="c">
<h3>some text</h3>
</div
我試圖在子頁面上回顯 page_id.. 但由於某種原因,在每個子頁面上,它都會回顯最新插入的 page_id..
我的 SQL 表:
table pages
: page_id (AI, PK), page_name
table subpages
: subpage_id (AI, PK), page_id, subpage_name
class.php 文件:
class Page {
public function fetch_all(){
global $pdo;
$query = $pdo->prepare("SELECT * FROM pages");
$query->execute();
return $query->fetchAll();
}
public function fetch_data($page_id) {
global $pdo;
$query = $pdo->prepare("SELECT * FROM pages WHERE page_id = ?");
$query->bindValue(1, $page_id);
$query->execute();
return $query->fetch();
}
}
class Subpage {
public function fetch_all(){
global $pdo;
$query = $pdo->prepare("SELECT * FROM subpages");
$query->execute();
return $query->fetchAll();
}
public function fetch_data($subpage_id) {
global $pdo;
$query = $pdo->prepare("SELECT * FROM subpages WHERE subpage_id = ?");
$query->bindValue(1, $subpage_id);
$query->execute();
return $query->fetch();
}
}
子頁面.php 文件:
<?php
include_once('class.php');
$page = new Page;
$subpage = new Subpage;
$pages = $page->fetch_all();
$subpages = $subpage->fetch_all();
?>
<!DOCTYPE html>
<html>
<head></head>
<body>
<!-- SOME EXAMPLE -->
<?php if ($subpage['page_id'] != 5) {
echo 'id is not 5';
} else {
echo 'id is 5';
} ?>
</body>
</html>
我試圖在子頁面上回顯 page_id.. 但由於某種原因,在每個子頁面上,它都會回顯最新插入的 page_id..
您還需要過濾subpage
查詢中的pageId
。
public function fetch_data($subpage_id, $page_id) {
global $pdo;
$query = $pdo->prepare("SELECT * FROM subpages WHERE subpage_id = ? and page_id=?");
$query->bindValue(1, $subpage_id);
$query->bindValue(2, (int)trim($page_id), PDO::PARAM_INT);
$query->execute();
return $query->fetch();
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.