• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

php在电脑下运行正常在linux终端机下却不正常 求解 头疼当中

php 搞代码 3年前 (2022-01-23) 19次浏览 已收录 0个评论

php在电脑上运行正常在linux终端机上却不正常 求解 头疼当中
我的php文件内容:

一直提示 fatal error; call to a member function query() on a (本文来源gaodai#ma#com搞@@代~&码网

搞代gaodaima码

non-object online 16

$DB->connection->query(“create table test(id integer primary key,name varchar(50),grade varchar(50),score varchar(50))”);一直提示这行出错我贴在这里

我在电脑上运行是完全正常的 可以插入数据 是在linux终端机上运行时就一直提示错误 要疯了 是终端机设置的问题吗

<?php

header(“content-Type: text/html; charset=Utf-8”);

//获取uiceshi.html页面提交过来的数据
$fname = $_POST[‘fname’]; //姓名
$fgrade = $_POST[‘fgrade’]; //年级
$fscore = $_POST[‘fscore’]; //分数

//$sql = ‘insert into test values ();’;

//创建一个数据库实例

$DB = new SQLite(‘blog.db’); //这个数据库文件名字任意

//创建表名为test的表
$DB->connection->query(“create table test(id integer primary key,name varchar(50),grade varchar(50),score varchar(50))”); 提示这行出错

//执行插入语句
//$result = $DB->query(“insert into test(name,grade,score) values(‘”.$fname.”‘,'”.$fgrade.”‘,'”.$fscore.”‘)”);
$result = $DB->connection->query(“insert into test(name,grade,score) values(‘”.$fname.”‘,'”.$fgrade.”‘,'”.$fscore.”‘)”);

//返回结果 主要是用来调试的
print_r($result);

//SQLite类
class SQLite
{
function __construct($file)
{
try
{
$this->connection=new PDO(‘sqlite:’.$file);
}
catch(PDOException $e)
{
try
{
$this->connection=new PDO(‘sqlite2:’.$file);
}
catch(PDOException $e)
{
exit(‘error!’);
}
}
}

function __destruct()
{
$this->connection=null;
}

function query($sql) //直接运行SQL,可用于更新、删除数据
{
return $this->connection->query($sql);
}

function getlist($sql) //取得记录列表
{
$recordlist=array();
foreach($this->query($sql) as $rstmp)
{
$recordlist[]=$rstmp;
}
return $recordlist;
}

function Execute($sql)
{
return $this->query($sql)->fetch();
}

function RecordArray($sql)
{
return $this->query($sql)->fetchAll();
}

function RecordCount($sql)
{
return count($this->RecordArray($sql));
}

function RecordLastID()
{
return $this->connection->lastInsertId();
}
}
?>

——解决方案——————–
LINUX下的SQLITE没有装好吧
——解决方案——————–
SQLITE 数据文件存放的目录是否有可写权限呢?

探讨

但是能读出来啊 如果把有数据的 data.db 放在linux地下就是终端机上 可以读取但是不能插入数据

——解决方案——————–
赋予 7777 权限
——解决方案——————–


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:php在电脑下运行正常在linux终端机下却不正常 求解 头疼当中

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址