草庐IT

PHP mysqli_query 不会执行

coder 2023-10-13 原文

我正在尝试编写我的第一个基本 PHP RESTful API - 我设法使用 MAMP 让它在我的本地机器上运行。但是当我上传到托管服务器时,它不想工作。

下面的代码 - 我在其中添加了一些 ECHO,以确保一切正常。在 $result=mysqli_query 之前,我们似乎都很好。

<?php

//header('Content-type:application/json');

    // Connect to db
    $con = mysqli_connect("HOSTNAME","USER","PASSWORD","DATABASE");

    echo "Database: ";
    // Check connection
    if ($con->connect_error) {
        die("Connection failed: " . $con->connect_error);
    } 
    echo "Connected successfully";
    echo "<br><br>";

    // Get value from url
    $bid = $_GET['bid'];
    echo "BID: ";
    echo $bid;
    echo "<br><br>";

    // Define Query
    $sql = "SELECT id, bandname, members, bio, songlist FROM bands WHERE id='$bid'";
    echo "SQL Query: ";
    echo $sql;
    echo "<br><br>";

    // Run Query
    $result = mysqli_query($con, $sql);
    echo "Result: ";
    print_r($result);
    echo "<br><br>";

    // Put Query result into array
    $result_array = mysqli_fetch_array($result, MYSQLI_ASSOC);
    echo "Result Array: ";
    print_r($result_array);
    echo "<br><br>";

    // Encode array as JSON and output
    echo "JSON: ";
    echo json_encode($result_array);

?>

我输入的网址是 http://bandsly.com/api.php?bid=1这是我在浏览器中得到的输出...

Database: Connected successfully

BID: 1

SQL Query: SELECT id, bandname, members, bio, songlist FROM bands WHERE id='1'

Result: 

Result Array: 

JSON: null

当我在数据库 (PHPmyadmin) 中手动运行查询 SELECT id, bandname, members, bio, songlist FROM bands WHERE id='1' 时,它工作正常,我得到 1 行返回具有正确的值。

手动数据库查询结果:

( http://i.stack.imgur.com/d3ZPJ.png )

任何帮助将不胜感激!!

*****编辑*****

好吧,我想我找到了问题……我的“成功连接”写得不正确,但总是看起来不错。看起来修复后,我有数据库连接问题。

我要去查找数据库连接设置并尝试修复它。

感谢大家的帮助!

最佳答案

您的代码在我的本地系统上似乎没问题 http://www.awesomescreenshot.com/image/494275/c6c255cd6924d07196076b32489489de .应该是连接问题。所以你可以做一些尝试检查连接

查看详情

 // Connect to db
    $con = mysqli_connect("HOSTNAME","USER","PASSWORD","DATABASE");

然后你可以尝试ping数据库

/* check connection */
if ($con->connect_errno) {
    printf("Connect failed: %s\n", $con->connect_error);
    exit();
}

/* check if server is alive */
if ($con->ping()) {
    printf ("Our connection is ok!\n");
} else {
    printf ("Error: %s\n", $con->error);
}

关于PHP mysqli_query 不会执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32063520/

有关PHP mysqli_query 不会执行的更多相关文章

  1. ruby-openid:执行发现时未设置@socket - 2

    我在使用omniauth/openid时遇到了一些麻烦。在尝试进行身份验证时,我在日志中发现了这一点:OpenID::FetchingError:Errorfetchinghttps://www.google.com/accounts/o8/.well-known/host-meta?hd=profiles.google.com%2Fmy_username:undefinedmethod`io'fornil:NilClass重要的是undefinedmethodio'fornil:NilClass来自openid/fetchers.rb,在下面的代码片段中:moduleNetclass

  2. ruby - Highline 询问方法不会使用同一行 - 2

    设置:狂欢ruby1.9.2高线(1.6.13)描述:我已经相当习惯在其他一些项目中使用highline,但已经有几个月没有使用它了。现在,在Ruby1.9.2上全新安装时,它似乎不允许在同一行回答提示。所以以前我会看到类似的东西:require"highline/import"ask"Whatisyourfavoritecolor?"并得到:Whatisyourfavoritecolor?|现在我看到类似的东西:Whatisyourfavoritecolor?|竖线(|)符号是我的终端光标。知道为什么会发生这种变化吗? 最佳答案

  3. ruby-on-rails - 项目升级后 Pow 不会更改 ruby​​ 版本 - 2

    我在我的Rails项目中使用Pow和powifygem。现在我尝试升级我的ruby​​版本(从1.9.3到2.0.0,我使用RVM)当我切换ruby​​版本、安装所有gem依赖项时,我通过运行railss并访问localhost:3000确保该应用程序正常运行以前,我通过使用pow访问http://my_app.dev来浏览我的应用程序。升级后,由于错误Bundler::RubyVersionMismatch:YourRubyversionis1.9.3,butyourGemfilespecified2.0.0,此url不起作用我尝试过的:重新创建pow应用程序重启pow服务器更新战俘

  4. ruby - Chef 执行非顺序配方 - 2

    我遵循了教程http://gettingstartedwithchef.com/,第1章。我的运行list是"run_list":["recipe[apt]","recipe[phpap]"]我的phpapRecipe默认Recipeinclude_recipe"apache2"include_recipe"build-essential"include_recipe"openssl"include_recipe"mysql::client"include_recipe"mysql::server"include_recipe"php"include_recipe"php::modul

  5. ruby - 为什么 Ruby 的 each 迭代器先执行? - 2

    我在用Ruby执行简单任务时遇到了一件奇怪的事情。我只想用每个方法迭代字母表,但迭代在执行中先进行:alfawit=("a".."z")puts"That'sanalphabet:\n\n#{alfawit.each{|litera|putslitera}}"这段代码的结果是:(缩写)abc⋮xyzThat'sanalphabet:a..z知道为什么它会这样工作或者我做错了什么吗?提前致谢。 最佳答案 因为您的each调用被插入到在固定字符串之前执行的字符串文字中。此外,each返回一个Enumerable,实际上您甚至打印它。试试

  6. ruby - 检查是否通过 require 执行或导入了 Ruby 程序 - 2

    如何检查Ruby文件是否是通过“require”或“load”导入的,而不是简单地从命令行执行的?例如:foo.rb的内容:puts"Hello"bar.rb的内容require'foo'输出:$./foo.rbHello$./bar.rbHello基本上,我想调用bar.rb以不执行puts调用。 最佳答案 将foo.rb改为:if__FILE__==$0puts"Hello"end检查__FILE__-当前ruby​​文件的名称-与$0-正在运行的脚本的名称。 关于ruby-检查是否

  7. postman——集合——执行集合——测试脚本——pm对象简单示例02 - 2

    //1.验证返回状态码是否是200pm.test("Statuscodeis200",function(){pm.response.to.have.status(200);});//2.验证返回body内是否含有某个值pm.test("Bodymatchesstring",function(){pm.expect(pm.response.text()).to.include("string_you_want_to_search");});//3.验证某个返回值是否是100pm.test("Yourtestname",function(){varjsonData=pm.response.json

  8. ruby-on-rails - rbenv:从 RVM 移动到 rbenv 后,在 Jenkins 执行 shell 中找不到命令 - 2

    我从Ubuntu服务器上的RVM转移到rbenv。当我使用RVM时,使用bundle没有问题。转移到rbenv后,我在Jenkins的执行shell中收到“找不到命令”错误。我内爆并删除了RVM,并从~/.bashrc'中删除了所有与RVM相关的行。使用后我仍然收到此错误:rvmimploderm~/.rvm-rfrm~/.rvmrcgeminstallbundlerecho'exportPATH="$HOME/.rbenv/bin:$PATH"'>>~/.bashrcecho'eval"$(rbenvinit-)"'>>~/.bashrc.~/.bashrcrbenvversions

  9. ruby - 如何使用 Selenium Webdriver 根据 div 的内容执行操作? - 2

    我有一个使用SeleniumWebdriver和Nokogiri的Ruby应用程序。我想选择一个类,然后对于那个类对应的每个div,我想根据div的内容执行一个Action。例如,我正在解析以下页面:https://www.google.com/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=puppies这是一个搜索结果页面,我正在寻找描述中包含“Adoption”一词的第一个结果。因此机器人应该寻找带有className:"result"的div,对于每个检查它的.descriptiondiv是否包含单词“adoption

  10. ruby-on-rails - Rake 任务仅调用一次时执行两次 - 2

    我写了一个非常简单的rake任务来尝试找到这个问题的根源。namespace:foodotaskbar::environmentdoputs'RUNNING'endend当在控制台中执行rakefoo:bar时,输出为:RUNNINGRUNNING当我执行任何rake任务时会发生这种情况。有没有人遇到过这样的事情?编辑上面的rake任务就是写在那个.rake文件中的所有内容。这是当前正在使用的Rakefile。requireFile.expand_path('../config/application',__FILE__)OurApp::Application.load_tasks这里

随机推荐