首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在调用时未显示结果的查询类

在调用时未显示结果的查询类
EN

Stack Overflow用户
提问于 2014-10-10 11:57:37
回答 3查看 35关注 0票数 0

我试图通过调用函数和向方法添加$sql参数,在页面的任何地方创建一个类来进行查询。

一切都处于品尝阶段,所以我知道一些小问题,比如SQL注入,但这不是这里的主题。

在测试完课程之后,我对它进行了测试,但没有得到任何结果,我不知道为什么,因为事情对我来说很好,但我可能错过了一些有趣的东西。

我的PHP脚本:

代码语言:javascript
复制
<?php

class Query{

    protected $host = 'localhost';
    protected $user = 'root';
    protected $pass = 'root';
    protected $db = 'test';

    public function connectAction(){

        $con = mysqli_connect($this->host, $this->user, $this->pass, $this->db) or die('Cannot Connect to DB');
        return $con;
    }

    public function queryAction($sql){

        mysqli_query($this->connectAction(),$sql);
        //$count = mysqli_num_rows($query);


        /*if($query == true && $count > 0){

        }else{

        }*/

    }
}

$execute = new Query();

我的第二个文件试图显示结果:

代码语言:javascript
复制
<html>
<head>
    <title>
    </title>
</head>
<body>
<h1>Welcome</h1>
<h3><?php

require_once('query.php');

$sql = 'SELECT * FROM tbl_user';

    $execute->queryAction($sql);

    foreach($execute as $item){
        echo $item['user_pass'];
    }

?></h3>
</body>
</html>

有人能帮我吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-10-10 12:05:18

在对象中添加:

代码语言:javascript
复制
protected $results;

在queryAction函数中,行更改为:

代码语言:javascript
复制
$this->results = mysqli_query($this->connectAction(),$sql);

超过:

代码语言:javascript
复制
foreach ($execute->results as $result){}
票数 0
EN

Stack Overflow用户

发布于 2014-10-10 12:02:00

试试这个..。

功能:

代码语言:javascript
复制
function select_rows($table,$fieldlist,$condition)
{
    $sql="select $fieldlist from $table $condition ";
/// echo $sql;exit;
    $resArray=$this->QueryResult($sql,'Select');
    return ($resArray);
}//end function

//function for execute query
function QueryResult($sql,$PVal)
{
    if($sql!=NULL)
    {
        //$rs=mysql_query($sql, $this->dblink) or die(mysql_error().':'.$PVal);
        $rs=mysql_query($sql);
        if(!$rs)
        {
            return $this->MysqlError($PVal);
        }//end if
        else
        { 
            return $rs;
        }//end else
    }//end if
    else
    {
        return '<b>MySQL Error</b>: Empty Query!';
    }//end else
}//end function

//function for print error msg
function MysqlError($eVal)
{
    if(mysql_error()!= '')
    {
            echo mysql_error().$eVal.;
    }//end if
}//end funciton 

用法:

代码语言:javascript
复制
$cond="condition";
$pass_select=$objA->select_rows(TABLEPREFIX.'tablename','fields',$cond);
票数 0
EN

Stack Overflow用户

发布于 2014-10-10 12:12:20

试试这个:

代码语言:javascript
复制
public function connectAction()
{
    if(!$this->con)
    {
        $this->con = mysqli_connect($this->host, $this->user, $this->pass, $this->db) or die('Cannot Connect to DB');
    }

    return $this->con;
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26298910

复制
相关文章

相似问题

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