Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >PHP致命错误:调用非对象上的成员函数execute() ( OPENSHIFT )

PHP致命错误:调用非对象上的成员函数execute() ( OPENSHIFT )
EN

Stack Overflow用户
提问于 2014-12-17 00:03:26
回答 2查看 408关注 0票数 0

获取此错误:

PHP致命错误:调用非对象上的成员函数execute()

同时把新的数据推送到我的开源应用程序中。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
function createAppInfo($title,$blog_link,$job_link,$description,$author,$status){

        $db = dbopen();
        $title = $db->real_escape_string($title);
        $author = $db->real_escape_string($author);
        $description = $db->real_escape_string($description);
        $job_link = $db->real_escape_string($job_link);
        $blog_link = $db->real_escape_string($blog_link);
        $status = $db->real_escape_string($status);

        $stmt = $db->prepare("INSERT INTO `app`(title,blog_link,job_link,description,author,status) 
            values('$title','$blog_link','$job_link','$description','$author','$status')");
        $stmt->bind_param('s',$title,$blog_link,$job_link,$description,$author,$status);   // bind inputs to the parameter

        /* execute prepared statement */
        $stmt->execute();
        $stmt->close();
        return true;
    }

这是我正在运行的代码,但在我看来,Openshift是在博客、准备或准备中不正确地工作--我不know..cause --代码正在本地机器上运行。另外,我把它改为常规的$db-query(INSERT) --它的工作非常好。

更新:

dbcon.php文件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<?php
function dbopen(){
  $host="localhost"; // Host name 
  $username="**"; // Mysql username 
  $password="**"; // Mysql password 
  $db_name="***"; // Database name 

 $db= new mysqli($host, $username, $password, $db_name);
  if (!$db)
    {
    die('Could not connect: ' . mysql_error());
    }

  return($db);
}?>

我包括这个文件来调用dbopen()

EN

回答 2

Stack Overflow用户

发布于 2014-12-17 00:29:11

  1. http://php.net/manual/fr/pdostatement.bindparam.php,没有那么多的参数.
  2. 请参阅@class注释:为什么要使用bindparam来获取已经包含在请求中的参数?

所以也许像这样的尝试会有帮助?:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$stmt = $db->prepare("INSERT INTO `app` (title,blog_link,job_link,description,author,status)  values(:title,:blog_link,:job_link,:description,:author,:status)");
$stmt->bind_param(':title',$title);
$stmt->bind_param(':blog_link', $blog_link);
etc...
$stmt->execute();

或者让您的prepare像以前一样,但是忘记bind_param (但是以前的解决方案应该更安全)。

票数 0
EN

Stack Overflow用户

发布于 2014-12-17 00:35:05

首先,您根本不需要使用real_escape_string,准备好的语句会自动转义所有值。其次,当绑定您的参数时,您需要为每个参数指定类型(下面的答案假设所有都是字符串)。

编辑:在做一些研究时,在通过openshift建立连接时必须使用MYSQL墨盒中的环境变量。

dbcon.php:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<?php
function dbopen(){

define('DB_HOST', getenv('OPENSHIFT_MYSQL_DB_HOST'));
define('DB_PORT', getenv('OPENSHIFT_MYSQL_DB_PORT'));
define('DB_USER', getenv('OPENSHIFT_MYSQL_DB_USERNAME'));
define('DB_PASS', getenv('OPENSHIFT_MYSQL_DB_PASSWORD'));
define('DB_NAME', getenv('OPENSHIFT_GEAR_NAME'));

 $db= new mysqli(DB_HOST, DB_USER, DB_PASS, DB_NAME);
  if (!$db)
    {
    die('Could not connect: ' . mysql_error());
    }

  return($db);
}?>

MYSQL查询:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$db = dbopen();
$stmt = $db->prepare("INSERT INTO `app`(title,blog_link,job_link,description,author,status)
VALUES(?,?,?,?,?,?)");

$stmt->bind_param('ssssss',$title,$blog_link,$job_link,$description,$author,$status);

/* execute prepared statement */
$stmt->execute();
$stmt->close();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27520839

复制
相关文章
URL编码
URL 编码的规则:简单来说,如果需要对一个字符进行 URL 编码,首先需要判断该字符是否是 ASCII 字符:
真正的飞鱼
2023/02/04
2.8K0
URL编码
人需要真理,就像瞎子需要明快的引路人一样。──高尔基 // URL编码 String encode = URLEncoder.encode("你好,世界", Encoder.UTF_8); System.out.println(encode); // URL解码 String decode = URLDecoder.decode(encode, Encoder.UTF_8); System.out.println(decode); 运行结果
阿超
2022/08/16
1.4K0
URL编码
html url编码、url解码
encodeURIComponent()编码的解码函数为 decodeURIComponent(),
全栈程序员站长
2022/07/19
4.8K0
html url编码、url解码
关于URL编码
一般来说,URL只能使用英文字母、阿拉伯数字和某些标点符号,不能使用其他文字和符号。比如,世界上有英文字母的网址"http://www.abc.com",但是没有希腊字母的网址"http://www.aβγ.com"(读作阿尔法-贝塔-伽玛.com)。这是因为网络标准RFC 1738做了硬性规定:
ruanyf
2018/09/21
1.8K0
关于URL编码
中文URL编码
URL编码是一个比较麻烦的事情,RFC 3986是关于URI的一个标准,在它的第2节定义了字符如何在URI中进行表示,而第3节把一个URI区分为scheme, hier-part, query, fragment几个component。根据这个RFC,A URI is composed from a limited set of characters consisting of digits, letters, and a few graphic symbols. 附录A中给出了ABNF定义。 比如URL,
用户1258909
2018/07/03
2.7K0
URL 如何编码
URL编码通常也被称为百分号编码(percent-encoding),是因为它的编码方式非常简单: 使用%加上两位的字符——0123456789ABCDEF——代表一个字节的十六进制形式。URL编码要做的,就是将每一个非安全的ASCII字符都被替换为“%xx”格式, 对于非ASCII字符,RFC文档建议使用utf-8对其进行编码得到相应的字节,然后对每个字节执行百分号编码。 如"中文"使用UTF-8字符集得到的字节为0xE4 0xB8 0xAD 0xE6 0x96 0x87,经过Url编码之后得到"%E4%B8%AD%E6%96%87"。
用户8983410
2021/10/08
1.8K0
Python url编码以及反编码
有时候通过浏览器传递过来的数据,经过url编码之后,就无法直接处理了。 需要进行反编码之后才能获取正确的结果。
Devops海洋的渔夫
2019/05/31
2.4K0
URL汉字编码
一、问题的由来 URL就是网址,只要上网,就一定会用到。 一般来说,URL只能使用英文字母、阿拉伯数字和某些标点符号,不能使用其他文 字和符号。比如,世界上有英文字母的网址 “http://www.abc.com”,但是没有希腊字母的网址“http://www.aβγ.com”(读作阿尔法-贝塔-伽玛.com)。这是 因为网络标准RFC 1738 做了硬性规定: "...Only alphanumerics [0-9a-zA-Z], the special characters "$-_.+!*'()
wangxl
2018/03/07
3K0
URL汉字编码
【基础进阶】URL详解与URL编码
作为前端,每日与 URL 打交道是必不可少的。但是也许每天只是单纯的用,对其只是一知半解,随着工作的展开,我发现在日常抓包调试,接口调用,浏览器兼容等许多方面,不深入去理解URL与URL编码则会踩到很多坑。故写下此篇文章,详解一下 URL 。 URL 与 URI 很多人会混淆这两个名词。 URL:(Uniform/Universal Resource Locator 的缩写,统一资源定位符)。 URI:(Uniform Resource Identifier 的缩写,统一资源标识符)。 关系: URI
Sb_Coco
2018/05/28
4.4K0
认识 URL 及其编码
URL(Uniform Resoure Locator)中文译为统一资源定位符,是 Internet 上资源的地址,比如一个文本文件,一张图片,一个视频。通过 URL 我们可以知道网络资源的位置以及访问它的协议。
恋喵大鲤鱼
2020/05/22
2.7K0
URL编码和Base64编码
在理清字符集和字符编码关系一文中我们介绍了常见字符集以及字符编码之间的关系,本期我们继续朝着这个方向介绍常见的编码算法。 URL编码 URL编码是浏览器发送数据给服务器时使用的编码,它是编码算法,而不
木可大大
2018/07/25
3.4K0
URL编码和Base64编码
c语言opencv读取图像_matlab读取一幅图像并显示
专栏地址:『youcans 的 OpenCV 例程300篇 – 总目录』 01. 图像的读取(cv2.imread) 02. 图像的保存(cv2.imwrite) 03. 图像的显示(cv2.imshow) 04. 用 matplotlib 显示图像(plt.imshow)
全栈程序员站长
2022/09/27
1.8K0
URL处理----拼接和编码
        前几天想爬取一个用户网站自动创建每个用户的资料方便注册一些账号,想写一个通用点的爬虫程序爬取只要配置一些爬取规则、爬取深度就ok,避免代码改动,由于时间关系只完成的个半成品,后面在考虑是用xml文件作为配置文件,还是简单的使用.ini文件,后者虽然简单但局限性太大,所以,,,偷几天懒顺便重新考虑下逻辑。
py3study
2020/01/19
1.4K0
URL编码中的空格(编码以后变为+)
最近测试MM反映查看Log的时候会在有些请求中看到“+”,但是最后的结果却没有问题。当时感觉很诡异,走读代码定位发现是因为调用了java.net.URLEncoder的方法出现。后来研究发现才发现没这么简单啊。 总结:在HTML4.0.1中,基于RFC-1738标准,‘ ’在URL编码以后为 ‘+’,只有JS中由于基于RFC-2396标准,‘ ’在URL编码以后为‘%20’。 java代码: 代码片段: String tempString = "Hello, World!"; Stri
子勰
2018/05/22
3.2K0
url编码,只对汉字有效
public static String toUtf8String(String s) { StringBuffer sb = new StringBuffer(); for (int i = 0; i < s.length(); i++) { char c = s.charAt(i); if (c >= 0 && c <= 255) { sb.append(c); } e
JQ实验室
2022/02/10
1.1K0
python中文转换url编码
        今天要处理百度贴吧的东西。想要做一个关键词的list,每次需要时,直接添加 到list里面就可以了。但是添加到list里面是中文的情况(比如‘丽江’),url的地址编码却是'%E4%B8%BD%E6%B1%9F',因此需 要做一个转换。这里我们就用到了模块urllib。 >>> import urllib >>> data = '丽江' >>> print data 丽江 >>> data '\xe4\xb8\xbd\xe6\xb1\x9f' >>> urllib.quote(data) '%E4%B8%BD%E6%B1%9F' 那我们想转回去呢? >>> urllib.unquote('%E4%B8%BD%E6%B1%9F') '\xe4\xb8\xbd\xe6\xb1\x9f' >>> print urllib.unquote('%E4%B8%BD%E6%B1%9F') 丽江 细心的同学会发现贴吧url中出现的是%C0%F6%BD%AD,而非'%E4%B8%BD%E6%B1%9F',其实是编码问题。百度的是gbk,其他的一般网站比如google就是utf8的。所以可以用下列语句实现。 >>> import sys,urllib >>> s = '丽江' >>> urllib.quote(s.decode(sys.stdin.encoding).encode('gbk')) '%C0%F6%BD%AD' >>> urllib.quote(s.decode(sys.stdin.encoding).encode('utf8')) '%E4%B8%BD%E6%B1%9F' >>>
py3study
2020/01/06
4.1K0
SSRF漏洞的URL编码
虽然知道什么是 URL编码 ,之前也学习过 SSRF漏洞 ,但是对 SSRF漏洞 中要进行一次URL编码或者两次URL编码甚是疑惑。 相信很多如我一般初学的小伙伴也有此疑惑。因此,特意学习探讨,于此总结。
cultureSun
2023/07/24
4070
SSRF漏洞的URL编码
图像行程编码
算法:图像行程编码是将一扫描行中颜色值相同的相邻像素用两个字段表示,第一个字段是一个计数值,用于指定像素重复的次数;第二个字段是具体像素的值,主要通过压缩除掉数据中的冗余字节或字节中的冗余位,从而达到减少文件所占空间的目的。
裴来凡
2022/05/29
5030
图像行程编码
url编码本质
其实url本质就是将中文字符串进行utf8编码,然后得到编码后的对象转换字符串去掉开头的b'以及末尾的',然后再将\x转换成%,再将里面内容x变成e最后将字符串小写变成大写
小小咸鱼YwY
2020/06/19
1.2K0
URL编码(LintCode刷题)
原题目如下 给出一个代表网址 host 的字符串 base_url,和代表查询参数的数组 query_params,你需要返回带查询参数的完整 URL。 查询参数由一些包含两个元素的数组组成,第一
兰舟千帆
2022/07/16
9180

相似问题

从互联网源编码一幅圆圆图像

37

从空格编码图像URL

35

FFMPEG H264编码每一幅图像

10

从url编码图像不起作用

15

从另一幅图像中减去一幅图像(剔除/排除) (ImageMagick)

25
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文