问题描述
我创建了一个托管在 AWS 上的基于 PHP 的网站。有 HTML 表单链接到 PHP 脚本以插入、更新和删除数据。一个页面有一个由 PHP 代码生成的 HTML 表格,该表格显示使用 SELECT 输入的数据。
后者工作正常 - 表加载并显示我直接播种到数据库中的数据。但是,我无法让前者正常运行。也就是说,代码没有连接到数据库并插入新值。提交的消息有效echo "<p>Thanks,{$_POST['update-name']}!</p>"
。但它从未真正进入 .db 文件。
我将数据库文件的权限更改为 -rw-r--r-- 1 apache apache 2048 Jan 8 22:18 friends_two.db
。甚至给了它 777 访问权限。一切都无济于事。
当我在本地环境中运行 PHP -S 时一切正常。
这是来自网络服务器的错误信息
sqlite3::exec(): unable to open database file in /var/www/html/action.PHP on line 33,referer: https://$
class MyDB extends sqlite3 {
function __construct() {
$this->open('friends_two.db');
}
}
$db = new MyDB();
$db->exec(<sql COMMANDS>);
编辑:我通过将 .db 文件移动到它自己的目录并赋予它 apache:apache 权限来使其工作
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)