热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

PHP:致命错误:调用未定义的方法mysqli。-PHP:Fatalerror:Calltoundefinedmethodmysqli

OkayIaskedaquestionlastweek.Igotafewanswers,severalwhichdidnothelp;however,Idecid

Okay I asked a question last week. I got a few answers, several which did not help; however, I decided to recheck all of my connections. That did resolve some problems after I had to check here to make it function. Next was for some reason I did not check my query to make sure it worked in mysql. I also noticed that my version has a way to output the query into PHP code which I did. Now I am stuck with the error code:

我上周问了一个问题。我得到了几个答案,几个没有帮助;然而,我决定重新检查我所有的连接。这确实解决了一些问题,因为我必须在这里检查以使它具有功能。接下来是出于某种原因,我没有检查我的查询以确保它在mysql中工作。我还注意到,我的版本有一种方法可以将查询输出到PHP代码中。现在我被错误代码卡住了:

Fatal error: Call to undefined method mysqli::SELECT tblConference.colConferenceName, tblSchool.colSchoolName, tblSchool.colClass, tblSurface.colSurfaceName, tblSurface.colSurfaceCompany, tblStadium.colStadiumName, tblStadium.colAddress, tblStadium.colCity, tblStadium.colRegion, tblStadium.colCounty, tblStadium.colCapacity FROM tblStadium, tblConference, tblSurface, tblSchool, tblStadiumSchool WHERE tblConference.colCOnferenceID= tblSchool.colConferenceID AND tblSurface.colSurfaceID = tblStadium.colSurfaceID AND tblStadium.colStadiumID = tblStadiumSchool.colStadiumID AND tblSchool.colSchoolID = tblStadiumSchool.colSchoolID AND tblSchool.colSchoolName LIKE \'A%\' ORDER BY tblSchool.colSchoolName() in C:\xampp\htdocs\stadium\alpha\a.php on line 24

致命错误:调用未定义的方法mysqli::选择tblConference。colConferenceName tblSchool。colSchoolName tblSchool。colClass tblSurface。colSurfaceName tblSurface。colSurfaceCompany tblStadium。colStadiumName tblStadium。colAddress tblStadium。colCity tblStadium。colRegion tblStadium。colCounty tblStadium。来自tblStadium, tblConference, tblSurface, tblSchool, tblStadiumSchool, tblConference的colCapacity。colCOnferenceID= tblSchool。colConferenceID tblSurface。colSurfaceID = tblStadium。colSurfaceID tblStadium。colStadiumID = tblStadiumSchool。colStadiumID tblSchool。colSchoolID = tblStadiumSchool。colSchoolID tblSchool。colSchoolName(类似于tblSchool.colSchoolName())在C:\xampp\htdocs\体育场\alpha\ A。php在24行

Now here is my new code, I will try to make it look halfway decently,

这是我的新代码,我会尽量让它看起来很漂亮,

    $mysqli = new mysqli("localhost", "root", "", "dbstadium");
    /* check connection */
      if (mysqli_connect_errno()) {
        printf("Connect failed: %s\n", mysqli_connect_error);
        exit();
        }
    /* your sql query */

$sql = "SELECT tblConference.colConferenceName, tblSchool.colSchoolName, tblSchool.colClass, tblSurface.colSurfaceName, tblSurface.colSurfaceCompany, tblStadium.colStadiumName, tblStadium.colAddress, tblStadium.colCity, tblStadium.colRegion, tblStadium.colCounty, tblStadium.colCapacity FROM tblStadium, tblConference, tblSurface, tblSchool, tblStadiumSchool WHERE tblConference.colCOnferenceID= tblSchool.colConferenceID AND tblSurface.colSurfaceID = tblStadium.colSurfaceID AND tblStadium.colStadiumID = tblStadiumSchool.colStadiumID AND tblSchool.colSchoolID = tblStadiumSchool.colSchoolID AND tblSchool.colSchoolName LIKE \'A%\' ORDER BY tblSchool.colSchoolName";

sql = "选择tblConference美元。colConferenceName tblSchool。colSchoolName tblSchool。colClass tblSurface。colSurfaceName tblSurface。colSurfaceCompany tblStadium。colStadiumName tblStadium。colAddress tblStadium。colCity tblStadium。colRegion tblStadium。colCounty tblStadium。来自tblStadium, tblConference, tblSurface, tblSchool, tblStadiumSchool, tblConference的colCapacity。colCOnferenceID= tblSchool。colConferenceID tblSurface。colSurfaceID = tblStadium。colSurfaceID tblStadium。colStadiumID = tblStadiumSchool。colStadiumID tblSchool。colSchoolID = tblStadiumSchool。colSchoolID tblSchool。colSchoolName LIKE \'A%\' ORDER BY tblSchool.colSchoolName";

/* query your db */
if ($result = $mysqli->$sql($sql)) {
    /* fetch associative array */
    while ($row = $sql->fetch_assoc())
    { /* display row */    
        echo '

School Name: ' . $row['colSchoolName'] . '
Conference: ' . $row['colConferenceName'] . '
Class: ' . $row['colClass'] . '
Stadium Name: ' . $row['colStadiumName'] . '
Address: ' . $row['colAddress'] . '
City: ' . $row['colCity'] . '
County: ' . $row['colCounty'] . '
Region: ' . $row['colRegion'] . '
Capacity: ' . $row['colCapacity'] . '
Surface Type: ' . $row['colSurfaceName'] . '
Surface Company: ' . $row['colSurfaceCompany'] . '
Year Installed: ' . $row['colSurfaceYear'] . '

'; } /* free result set */ $result->free(); } /* close connection */ $mysqli->close();

Now I am not sure what the issue is. I been trying to get this to work. BTW just so you know the query and connection should not be an issue. If their is something I am missing just let me know.

现在我不知道这个问题是什么。我一直试着让它发挥作用。顺便说一下,您知道查询和连接不应该是一个问题。如果他们是我错过的东西,请告诉我。

2 个解决方案

#1


2  

There is your problem:

还有你的问题:

if ($result = $mysqli->$sql($sql)) {

You're basically calling a method with the same name as your SQL statement, i.e. SELECT tblConference [...]. Such a method doesn't exist, obviously. Rather, try mysqli::query:

基本上,您调用的方法与SQL语句的名称相同,即SELECT tblConference[…]。显然,这种方法并不存在。相反,尝试mysqli::查询:

if ($result = $mysqli->query($sql)) {

By the way, another error is in this line:

顺便说一下,另一个错误在这条线上:

while ($row = $sql->fetch_assoc())

$sql is still your SQL statement. What you want is to iterate over the mysqli_result object, which you've put into the variable $result:

$sql仍然是您的sql语句。您需要对mysqli_result对象进行迭代,将其放入变量$result中:

while ($row = $result->fetch_assoc())

#2


0  

This should do it

这个应该怎么做

$mysqli = new mysqli("localhost", "root", "", "dbstadium");
if (mysqli_connect_errno()) { // check connection
    printf("Connect failed: %s\n", mysqli_connect_error);
    exit();
}
    // your sql query 
    $sql = "SELECT tblConference.colConferenceName, tblSchool.colSchoolName, tblSchool.colClass, tblSurface.colSurfaceName, tblSurface.colSurfaceCompany, tblStadium.colStadiumName, tblStadium.colAddress, tblStadium.colCity, tblStadium.colRegion, tblStadium.colCounty, tblStadium.colCapacity FROM tblStadium, tblConference, tblSurface, tblSchool, tblStadiumSchool WHERE tblConference.colCOnferenceID= tblSchool.colConferenceID AND tblSurface.colSurfaceID = tblStadium.colSurfaceID AND tblStadium.colStadiumID = tblStadiumSchool.colStadiumID AND tblSchool.colSchoolID = tblStadiumSchool.colSchoolID AND tblSchool.colSchoolName LIKE \'A%\' ORDER BY tblSchool.colSchoolName";
        if ($result = $mysqli->query($sql)) { // query your db
            while ($row = $result->fetch_object())// fetch object
            {  // display row    
                echo "

School Name: {$row->colSchoolName}
Conference: {$row->colConferenceName}
Class: {$row->colClass}
Stadium Name: {$row->colStadiumName}
Address: {$row->colAddress}
City: {$row->colCity}
County: {$row->colCounty}
Region: {$row->colRegion}
Capacity: {$row->colCapacity}
Surface Type: {$row->colSurfaceName}
Surface Company: {$row->colSurfaceCompany}
Year Installed: {$row->colSurfaceYear}

"; }//end while loop $result->free(); // free result set }//end if $mysqli->close(); // close connection

推荐阅读
  • 本文讨论了在Windows 8上安装gvim中插件时出现的错误加载问题。作者将EasyMotion插件放在了正确的位置,但加载时却出现了错误。作者提供了下载链接和之前放置插件的位置,并列出了出现的错误信息。 ... [详细]
  • 本文介绍了一个在线急等问题解决方法,即如何统计数据库中某个字段下的所有数据,并将结果显示在文本框里。作者提到了自己是一个菜鸟,希望能够得到帮助。作者使用的是ACCESS数据库,并且给出了一个例子,希望得到的结果是560。作者还提到自己已经尝试了使用"select sum(字段2) from 表名"的语句,得到的结果是650,但不知道如何得到560。希望能够得到解决方案。 ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • 本文介绍了设计师伊振华受邀参与沈阳市智慧城市运行管理中心项目的整体设计,并以数字赋能和创新驱动高质量发展的理念,建设了集成、智慧、高效的一体化城市综合管理平台,促进了城市的数字化转型。该中心被称为当代城市的智能心脏,为沈阳市的智慧城市建设做出了重要贡献。 ... [详细]
  • 向QTextEdit拖放文件的方法及实现步骤
    本文介绍了在使用QTextEdit时如何实现拖放文件的功能,包括相关的方法和实现步骤。通过重写dragEnterEvent和dropEvent函数,并结合QMimeData和QUrl等类,可以轻松实现向QTextEdit拖放文件的功能。详细的代码实现和说明可以参考本文提供的示例代码。 ... [详细]
  • Linux重启网络命令实例及关机和重启示例教程
    本文介绍了Linux系统中重启网络命令的实例,以及使用不同方式关机和重启系统的示例教程。包括使用图形界面和控制台访问系统的方法,以及使用shutdown命令进行系统关机和重启的句法和用法。 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • 推荐系统遇上深度学习(十七)详解推荐系统中的常用评测指标
    原创:石晓文小小挖掘机2018-06-18笔者是一个痴迷于挖掘数据中的价值的学习人,希望在平日的工作学习中,挖掘数据的价值, ... [详细]
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • 本文详细介绍了Spring的JdbcTemplate的使用方法,包括执行存储过程、存储函数的call()方法,执行任何SQL语句的execute()方法,单个更新和批量更新的update()和batchUpdate()方法,以及单查和列表查询的query()和queryForXXX()方法。提供了经过测试的API供使用。 ... [详细]
  • ALTERTABLE通过更改、添加、除去列和约束,或者通过启用或禁用约束和触发器来更改表的定义。语法ALTERTABLEtable{[ALTERCOLUMNcolu ... [详细]
  • 前景:当UI一个查询条件为多项选择,或录入多个条件的时候,比如查询所有名称里面包含以下动态条件,需要模糊查询里面每一项时比如是这样一个数组条件:newstring[]{兴业银行, ... [详细]
  • 本文介绍了如何使用C#制作Java+Mysql+Tomcat环境安装程序,实现一键式安装。通过将JDK、Mysql、Tomcat三者制作成一个安装包,解决了客户在安装软件时的复杂配置和繁琐问题,便于管理软件版本和系统集成。具体步骤包括配置JDK环境变量和安装Mysql服务,其中使用了MySQL Server 5.5社区版和my.ini文件。安装方法为通过命令行将目录转到mysql的bin目录下,执行mysqld --install MySQL5命令。 ... [详细]
  • 本文介绍了在CentOS上安装Python2.7.2的详细步骤,包括下载、解压、编译和安装等操作。同时提供了一些注意事项,以及测试安装是否成功的方法。 ... [详细]
author-avatar
1098502132_027279
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有