首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >资源id #5: MySQL

资源id #5: MySQL
EN

Stack Overflow用户
提问于 2012-03-20 21:40:32
回答 4查看 16K关注 0票数 1
代码语言:javascript
运行
复制
<?php
//Sessions starten
session_start();
//Include stuff
include('conf.php');
//'Shortcuts' maken
$sname = $site['name'];
$shost = $site['host'];
$shostb = $site['hostb'];
//Verbinding maken met DB
$link = mysql_connect($database['host'], $database['username'], $database['password']) or die (mysql_error());
mysql_select_db($database['db'],$link) or die(mysql_error());
//Gegevens uit db halen
if(isset($_GET['page'])){
    $page['title'] = mysql_query("SELECT title FROM pages WHERE page = $_GET[page]");
}
else{
    $page['title'] = mysql_query("SELECT title FROM pages WHERE page = 'index.php'");
}
?>
<!doctype html>
<html lang="nl">
<head>
    <meta charset="utf-8" />
    <title><?php echo $sname;?>•<?php echo $page['title']?></title>

有人知道为什么这不管用吗?我的数据库结构是:

页面标题

index.php|index

对不起我搞不清楚。var 转储类型的$page['title'] = resource(5) (mysql结果)。我怎么才能解决这个问题?谢谢你的帮助。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-03-20 21:41:48

mysql_query返回一个资源,您需要在资源上使用mysql_fetch_array (或类似的,例如mysql_fetch_assoc)来获取标题值。

例如:

代码语言:javascript
运行
复制
$res = mysql_query("SELECT title FROM pages WHERE page = 'index.php'");
$page = mysql_fetch_assoc($res);

// $page['title'] now contains the value (assuming there's an index.php page in the DB).

警告:查询容易受到SQL注入的影响。

票数 7
EN

Stack Overflow用户

发布于 2012-03-20 21:45:09

这是由mysql_query返回的resource,在资源上使用mysql_fetch_assoc获取标题值。

做以下修改:

代码语言:javascript
运行
复制
 if(isset($_GET['page'])){
        $result = mysql_query("SELECT title FROM pages WHERE page = $_GET[page]");
    }
    else{
        $result = mysql_query("SELECT title FROM pages WHERE page = 'index.php'");
    }
   $row= mysql_fetch_assoc($result);
   $page['title'] =$row['title'];
票数 0
EN

Stack Overflow用户

发布于 2012-03-20 21:45:27

您需要使用像mysql_fetch_assoc()mysql_result()这样的函数来获取实际数据。

代码语言:javascript
运行
复制
if(isset($_GET['page'])){
     $result = mysql_query("SELECT title FROM pages WHERE page = '" . mysql_real_escape_string($_GET[page]) . "'");
     $page['title'] = mysql_result($result, 0, 'title');
}
else{
     $result = mysql_query("SELECT title FROM pages WHERE page = 'index.php'");
     $page['title'] = mysql_result($result, 0, 'title');
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9795422

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档