TEL:400-8793-956
当前位置:程序、服务器

PHP + MySQL用户定义函数

提问者: 近期获赞: 浏览人数: 发布时间:2020-12-17 12:19:48

 问:大家好。我正在尝试使用自己定义的PHP函数打印所有子类别项目。此功能的目的是打印所有父项值为$ parent的项目。此功能有些问题,为什么它不按我的意愿显示信息。为了使您理解我的目标,假设我们将项目归为不同的组,每个项目都有自己的组ID。调用此函数,我希望通过将组ID作为参数($ parent)来获取同一组的所有项目。请有人可以帮助我找出此功能无法正常工作的原因。非常感谢。

 
<?php
include ('connect.php');
include ('head.html');
 
echo '<div class="categ"><p class="b">Health</p>';
function retrieve_column($parent){
    $sql = "SELECT item FROM category WHERE parent = $parent ORDER BY item ASC";
    $r = mysqli_query($dbc, $sql);
        if (!$r) {
            echo "Couldn’t make a connection to DB.";
        } else {
            while($row = mysqli_fetch_assoc($r)){
                for ($i=0; $i < mysqli_num_rows($r); $i++) {
                    echo '<a class="text" href="">' . $row['item'][$i] . '</a><br />';
                }
            }
        }
    }
 
$par = 1;
retrieve_column($par);
mysqli_free_r($r);
mysqli_close($dbc);
?>
 
答:你好
 
抱歉,很遗憾,我知道您想解释一下,但是很遗憾,我仍然感到困惑。例如,你说你在不同的群体分类的项目,因此,例如,你有一个表category的列parent和item。因此,我看到您想获取其中parent是特定内容的项目列表。首先,我会在数据库中转义$ parent,否则它parent = '$parent'会变成MySQL注入攻击或更严重的攻击。其次,您在第13行的for循环应该做什么?您为什么不能这样做:
 
        while($row = mysqli_fetch_assoc($r)){
             echo '<a class="text" href="">' . $row['item'] . '</a><br />';
        }
上一篇: jQuery .stop()所有动画
下一篇: 检查电子邮件是否存在或代码不起作用