MySQL PHP CMS URL创建(需要编辑)

MySQL PHP CMS URL创建(需要编辑),php,mysql,url,content-management-system,Php,Mysql,Url,Content Management System,我为这个问题的长度道歉,并想提前说声谢谢 下面是有问题的代码片段。我有一个MySQL表,它存储了根据本教程定制的PHP MySQL CMS程序的信息:。正如您在列表页面和显示管理功能中所看到的,URL是使用基本URL、ID以及标题构建的。ID是MySQL表中的主键,它提取页面上显示的所有必要信息。如何重写下面的代码,使其仅在URL中显示标题,而不显示ID,但仍不显示ID作为页面中显示信息的唯一标识符 从functions.php: '// Display center bottom column

我为这个问题的长度道歉,并想提前说声谢谢

下面是有问题的代码片段。我有一个MySQL表,它存储了根据本教程定制的PHP MySQL CMS程序的信息:。正如您在列表页面和显示管理功能中所看到的,URL是使用基本URL、ID以及标题构建的。ID是MySQL表中的主键,它提取页面上显示的所有必要信息。如何重写下面的代码,使其仅在URL中显示标题,而不显示ID,但仍不显示ID作为页面中显示信息的唯一标识符

从functions.php:

'// Display center bottom column
function centerbottomcolumn() {
if ($_GET['id']) {
    $pageID = (int) $_GET['id'];

    $result = mysql_query("SELECT centerbottomcolumn FROM pages WHERE id='$pageID'");
    $row = mysql_fetch_array($result);

    echo $row['centerbottomcolumn'];
} else {
    $result = mysql_query("SELECT value FROM settings WHERE name='homePage'");
    $row = mysql_fetch_array($result);

    $pageID = $row['value'];

    $result = mysql_query("SELECT centerbottomcolumn FROM pages WHERE title='$pageID'");
    $row = mysql_fetch_array($result);

    echo $row['centerbottomcolumn'];
}
}

}

From index.php:
(头顶标签上方)
需要一次'functions.php';
connect();
$IDs=getArray();
(摘自正文)
找不到

'
您希望页面显示基于给定ID的信息,但不希望将ID传递到URL查询字符串上的页面?您可以将数据发布到目标页面而不是查询字符串上。你可以发明一个新的ID作为真实ID的代理。但一般来说,你不能让页面在没有输入的情况下根据用户输入(在本例中单击带有ID的链接)做一些事情。如果您想隐藏ID,因为它应该是机密的,或者您不希望人们能够猜到它们,那么您可以使用某种随机guid替换您的ID,该guid映射到数据库中的真实(机密)ID。

我该怎么做?对不起,我对这个很陌生。边学边学!典型的实现是在创建记录时为guid列中的每个记录生成guid并存储该guid。您可以使用自己的算法生成guid,也可以使用您的语言或数据库提供的算法(例如MySql中的uuid()。向guid添加唯一索引。然后,无论在哪里使用ID,都可以使用guid。您仍然需要传递它,但是您降低了有人可以猜到下一个guid的概率。但是你为什么要隐藏身份证号码呢?解决这个问题的真正办法可能是通过授权来阻止访问。我并不是要阻止访问。我需要ID从表中提取页面信息。因此,我希望通过.htaccess将id隐藏在url中,并在.htaccess中指定一系列id号,但还没有弄清楚如何隐藏。所以我正在探索所有的选择。
// List the pages
function listPages() {
// List the home page first
$result = mysql_query("SELECT value FROM settings WHERE name='homePage'");
$row = mysql_fetch_array($result);

$homeID = $row['value'];

$result = mysql_query("SELECT title FROM pages WHERE id='$homeID'");
$row = mysql_fetch_array($result);

$homeTitle = $row['title'];

echo "<li><a href='" . BASE_URL . "/index.php'>$homeTitle</a></li>";

// List the rest of the pages
$result = mysql_query("SELECT id, title FROM pages");

while ($row = mysql_fetch_array($result)) {
    // Do not list the home page twice
    if ($row['title'] != $homeID) {
        $pageID = $row['title'];
        $pageTitle = $row['title'];

        echo "<li><a href='" . BASE_URL . "/?id=$id&title=$pageTitle'>$pageTitle</a></li>";
    }
}
// Display admin table
function displayAdmin() {
// Find the home page ID
$result = mysql_query("SELECT value FROM settings WHERE name='homePage'");
$row = mysql_fetch_array($result);

$homeID = $row['value'];

// Display a table
$result = mysql_query("SELECT id, title, date FROM pages");

echo '<table width="961">';
echo '<tr height="50">
    <th align="left">ID</th>
    <th align="left">Title of the Page</th>
    <th align="left">Date Created</th>
    <th align="left">Actions</th>
    </tr>';

while ($row = mysql_fetch_array($result)) {
    $id = $row['id'];
    $title = $row['title'];
    $date = date('M d, Y', $row['date']);

    echo "<tr>
        <td>$id</td>
        <td><a href='". BASE_URL . "/id=$id&title=$title'>$title</a>";
    if ($id == $homeID) {
        echo ' <strong>(Home Page)</strong>';
    }
    echo "</td>
        <td>$date</td>
        <td><a href='edit.php?id=$id'>Edit</a></td><td>
        <a href='confirm.php?id=$id'>Delete</a></td><td>
        <a href='sethome.php?id=$id'>Set as Home</a>";
}
echo '</table>';
// Get array with page IDs
function getArray() {
$result = mysql_query("SELECT id FROM pages");

$IDs = array();
$i = 0;
while ($row = mysql_fetch_array($result)) {
    $IDs[$i] = $row['id'];
    $i++;
}
return $IDs;
From index.php:

(above head tag)
require_once 'functions.php';

connect();

$IDs = getArray();

(from body)
<?php if (in_array($_GET['id'], $IDs) || !$_GET): ?>
<?php centerbottomcolumn(); ?>
<?php else: ?>

        <!-- Show a not found error -->
        <p>Not found</p>

    <?php endif; ?>'