我正在做一些有2页的事情。一个是index.php,另一个是admin.php。我正在创建CMS页面,您可以自己编辑页面上的信息。然后它将转到存储信息的数据库。我还必须拥有用户可以更新页面信息的位置。我在这里有点困惑。比如我在这里调用数据库,我正在启动一个名为get_content的函数:
<?php
function dbConnect(){
$hostname="localhost";
$database="blank";
$mysql_login="blank";
$mysql_password="blank";
if(!($db=mysql_connect($hostname, $mysql_login, $mysql_password))){
echo"error on connect";
}
else{
if(!(mysql_select_db($database,$db))){
echo mysql_error();
echo "<br />error on database connection. Check your settings.";
}
else{
return $db;
}
}
function get_content(){
$sql = "Select PageID,PageHeading,SubHeading,PageTitle,MetaDescription,MetaKeywords From tblContent ";
$query = mysql_query($sql) or die(mysql_error());
while ($row =mysql_fetch_assoc($query,MYSQL_ASSOC)){
$title =$row['PageID'[;
$PageHeading =$row['PageHeading'];
$SubHeading = $row['SubHeading'];
$PageTitle = $row['PageTitle'];
$MetaDescription =$row['MetaDescription'];
$MetaKeywords = $row['MetaKeywords'];
?>
然后在索引页面上,我将在有人可以改变的地方回应它:
<h2><a href = "admin.php"><?php echo mysql_result($row,0,"SubHeading");?>A Valid XHTML and CSS Web Design by WG.</a></h2>
我知道该功能尚未完成我仍在研究那部分。我想知道的是我正确地回应它还是我离开了。这是我第一次在PHP中弄乱CMS,我还在学习它。我正在使用navicat和文本垫,是的,我知道这是旧学校,但这就是我所展示的内容。但我的索引是一个形式而不是博客。我已经看到很多用于博客的CMS页面与表格一起使用的很多。任何意见都将被视为感谢您阅读我的问题。
答案 0 :(得分:0)
您的问题有点混乱,您的代码非常不完整。如果你以正确的方式做到这一点我很难说,因为我没有看到脚本的其余部分。您还需要连接到那里的数据库并获取数据。 $ row变量只存在于函数get_content()中的while语句中。
您可以完成get_content()并在index.php中使用它。请记住,您在函数内定义的变量仅在那里可用。如果您需要该函数外部的数据,则需要返回所需的值并将其保存到其他变量中。如果您在index.php中的get_content()函数中执行相同操作,那么您只需回显您定义的变量。像这样:
<h2><a href="admin.php"><?php echo $SubHeading; ?></a></h2>
或者你也可以在php标签里面这样做:
echo '<h2><a href="admin.php">{$SubHeading}</a></h2>';
我希望能回答你的问题。
修改强>
index.php页面中你需要的就是你在admin文件中所做的。您需要使用mysql_connect()
连接到db并选择db mysql_select_db()
。然后,您需要使用$query = mysql_query($sql)
的相应查询从数据库中选择数据。如果它想要显示的行多于一行,则需要将其置于while循环中(这似乎就是这种情况),您只需要执行一个$row = mysql_fetch_assoc($query)
。之后,您可以使用$row['column_name']
获取数据。如果您有多行,则可以在while循环中使用$row['column_name']
来获取每个连续行的数据。
这是一个示例index.php:
<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password') or
die('Could not connect: ' . mysql_error());
mysql_select_db('database_name')) or die('Could not select database: ' .
mysql_error());
$sql = "SELECT SubHeading FROM tblContent WHERE PageID='1' LIMIT 1;";
$query = mysql_query($sql);
$row = mysql_fetch_assoc($query);
echo '<h2><a href="admin.php">{$row[\'SubHeading\']}</a></h2>';
mysql_close();
?>
这正是您从数据库中显示SubHeading所需的内容。您可能还需要处理表单并将提交的数据保存到admin.php文件中的数据库中。