大家好,我在试图发布到数据库时遇到这两个错误
注意:未定义的变量:第17行C:\xampp\htdocs\phptuts\sandbox\blog\admin\index.php中的conn
这里是代码;
> <?php
require '../functions.php';
require '../db.php';
$data = array();
if ( $_SERVER['REQUEST_METHOD'] === 'POST' ) {
$title = $_POST['title'];
$body = $_POST['body'];
if ( empty($title) || empty($body) ) {
$data['status'] = 'Please fill out both inputs';
} else {
Blog\DB\query(
"INSERT INTO posts(title, body) VALUES(:title, :body)",
array('title' => $title, 'body' => $body),
$conn); // line 17
}
}
view('admin/create', $data);
这是第二个
致命错误:在第26行的C:\xampp\htdocs\phptuts\沙盒\blog\db.php中的非对象上调用成员函数准备()
function query($query, $bindings, $conn)
{
$stmt = $conn->prepare($query); //line 26
return $stmt->execute($bindings);
}
希望有人能帮我这个,因为我正在做PHP基础课程的教程加上义务博客:在这里找到的第4部分https://tutsplus.com/lesson/the-obligatory-blog-part-4/
这里更新的是db.php文件
<?php namespace Blog\DB;
$config = array(
'username' => 'root',
'password' => 'foobar',
'database' => 'blog'
);
function connect($config)
{
try {
$conn = new \PDO('mysql:host=localhost;dbname=' . $config['database'],
$config['username'],
$config['password']);
$conn->setAttribute(\PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION);
return $conn;
} catch (Exception $e) {
return false;
}
}
function query($query, $bindings, $conn)
{
$stmt = $conn->prepare($query);
$stmt->execute($bindings);
return ($stmt->rowCount() > 0) ? $stmt : false;
}
function get($tableName, $conn, $limit = 10)
{
try {
$result = $conn->query("SELECT * FROM $tableName ORDER BY id DESC LIMIT $limit");
return ( $result->rowCount() > 0 )
? $result
: false;
} catch(Exception $e) {
return false;
}
}
function get_by_id($id, $conn)
{
$query = query(
'SELECT * FROM posts WHERE id = :id LIMIT 1',
array('id' => $id),
$conn
);
if ( $query ) return $query->fetchAll();
// else
}
jo应该首先创建db连接。并将其存储在$conn
中。第二个错误与第一个有关。由于没有连接,$conn
为NULL
,因此没有成员函数。任何。
至于你的代码:
<?php
require '../functions.php';
require '../db.php';
$data = array();
$conn = Blog\DB\connect($config); //this does not work actually. but mainly the connection was missing.
if ( $_SERVER['REQUEST_METHOD'] === 'POST' ) {
...
$conn似乎不是数据库实例。
确保$conn
实际持有到数据库的连接。你可以检查这个
var_dump($conn)
我尝试了一些代码来使用PHP和slim框架构建RESTful API Web服务。(我正在使用高级Rest客户端测试此代码) 这是我的密码。
问题内容: 我正在尝试执行一些查询以获取有关某些图像的信息页面。我写了一个函数 根据这些图片的受欢迎程度选择页面。我已经编写了一个处理与数据库交互的类,并保存了有关图像的信息。当我尝试运行此程序时,出现错误。 是mysqli结果集,所以我对为什么它不起作用感到困惑。 问题答案: 那是因为您的查询中有错误。 错误时将返回false。将其更改为: 如果有错误,那应该抛出异常…
这是我代码的一部分 我得到一个错误致命错误:对$stmt行上的非对象调用成员函数bind_param()-
我得到一个错误与此文本:(对不起,我的英语不好,我来自德国!) 错误:
[解决方案由s_ha_dumhttp://wordpress.stackexchange.com] 我试图根据在帖子设置中输入的密码将用户引导到某个帖子。我几乎有工作代码: 表格第页: 代码在functions.php 但是,我在这一行遇到了致命错误(致命错误:对非对象调用成员函数get_var()): $post_id=$wpdb- 如果有人能看一眼,我会非常感激:)谢谢!
连接失败:SQLState[28000][1045]拒绝用户“rkcat”@"localhost“(使用密码:YES)的访问。严重错误:对中的非对象调用成员函数query()