如何使PHP函数包含MySQL的命令

我想创建一个简单的菜单功能,可以调用它例如get_menu()

这是我当前的代码。

<?php $select = 'SELECT * FROM pages'; $query = $db->rq($select); while ($page = $db->fetch($query)) { $id = $page['id']; $title = $page['title']; ?> <a href="page.php?id=<?php echo $id; ?>" title="<?php echo $title; ?>"><?php echo $title; ?></a> <?php } ?>

如何做到这一点的?

function get_menu() { }

让我知道。

--------------解决方案-------------

这里是函数,该函数:

function get_menu(&$db)
{
$select = 'SELECT * FROM pages';
$query = $db->rq($select);
$menu = '';

while ($page = $db->fetch($query)) {
$id = $page['id'];
$title = $page['title'];

$menu .= '<a href="page.php?id=' . $id . '" &title="' . $title .'></a>'
}

return $menu;
}

一些快速更正在你的脚本:

  • 你失踪=id
  • 你失踪&title

建议:

你可以给你的菜单链接的类和风格根据你的菜单需要:)

get_menu()已经获得引用$db不知。 也许是最好的,最简单的方法是通过该引用作为参数:

function get_menu(MyDatabaseHandler $db) {
// code proposed by Sarfraz here
}

现在,在这里你已经拥有一个错误:

<a href="page.php?id=<?php echo $id; ?>" title="<?php echo $title; ?>"><?php echo $title; ?></a>

注意=id

你不能太小心

首先,独立的部分,你正在做的事情,和用于显示的东西之一。

二,替代语法查找显示部分更好。

<?php
function get_menu(){
$items = array();
$select = 'SELECT * FROM pages';
$query = $db->rq($select);
while ($page = $db->fetch($query)) {
$items[] = $page['id'];
}
return $items;
}

$menuItems = get_menu();
?>
<ul>
<?php foreach($menuItems as $item): ?>
<li><a href="page.php?id=<?php echo $item['id']; ?>" title="<?php echo $item['title']; ?>"><?php echo $item['title']; ?></a></li>
<?php endforeach;?>
</ul>

Sarfraz发布的代码将创建无效的锚标签(即链接)。 他们还将缺少的名字。 这里是较短/更快的版本:

function get_menu($db)
{
$result = $db->rq('SELECT id,title FROM pages');
$menu = '';

while ($page = $db->fetch($result))
{
$id = $page['id'];
$title = $page['title'];

$menu .= "<a href='page.php?id={$id}&title={$title}'>{$title}</a>\n";
}

return $menu;
}

要使用这样做:

echo get_menu($db);

你得到的错误可能是从没有通过数据库连接功能产生。

注:它通常不是一个好主意,以显示数据库ID号,以在安全利益的用户; 蛞蝓是多少,用于识别页面更好的搜索引擎友好。 此外,不应该有任何需要通过网页标题page.php,因为如果你有身份证就可以得到,当你从数据库中需要它。 下面是记住这个代码:

function get_menu($db)
{
$result = $db->rq('SELECT id,title FROM pages');
$menu = '';

while ($page = $db->fetch($result))
{
$menu .= "<a href='page.php?id={$page['id']}'>{$page['title']}</a>\n";
}

return $menu;
}

只要把function get_menu() {上面的代码并}以下

或者这样?

function get_menu( $title, $id ) {
$menu = '';

$menu .= '<a href="page.php?id' . $id . '" title="' . $title .'></a>'

echo $menu;
}
------------------------
$select = 'SELECT * FROM pages';
$query = $db->rq($select);
while ($page = $db->fetch($query)) {
$id = $page['id'];
$title = $page['title'];

get_menu($title, $id );
}

function getMenu()
{
$select = 'SELECT FROM pages';
$query = $db->rq($select);
$menu = new Array;

while ($page = $db->fetch($query)) {
$menu[] = '<a href="page.php?id=' . $page['id'] . '&title=' . $page['title'] .'"></a>';
}

return $menu;
}

分类:php 时间:2015-03-16 人气:1
本文关键词: PHP,功能
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.417 (s). 9 q(s)