如何从数据库中获取页面数据并创建对象

时间:2014-08-02 11:55:15

标签: php mysql sql

主。我需要帮助。我收到了以下错误:

警告:mysql_fetch_object():提供的参数不是 /home/uxxxxxxxxx/public_html/index.php 的有效MySQL结果资源。

DB:

CREATE TABLE IF NOT EXISTS `pages` (
`pageID` int(11) NOT NULL AUTO_INCREMENT,
`pageTitle` varchar(255) DEFAULT NULL,
`pageCont` text,
PRIMARY KEY (`pageID`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=6 ;

的index.php

<?php require('includes/config.php'); ?>
<!DOCTYPE>
<html>
<head>
<title>My Page</title>
</head>
<body>
<?php   
if(!isset($_GET['p'])){
    $q = mysql_query("SELECT * FROM pages WHERE pageID='$id'");
} 

//get page data from database and create an object
$r = mysql_fetch_object($q);

//print the pages content
echo "<h2>$r->pageTitle</h2>";
echo $r->pageCont;
?>
</body>
</html>

提前致谢。

1 个答案:

答案 0 :(得分:0)

在mysql查询中使用它之前,需要为$ id赋值。

您还应该捕获任何mysql错误(请参阅Mike W的建议副本)。

最后但并非最不重要的是mysql_已弃用,现在您应该使用mysqli_PDO代替。此外,不建议将任何变量插入到mysql查询中,而不必转义它。请改用参数化查询。这可以防止SQL注入攻击。