在php中编辑数据库中的文件


Edit a file inside database in php

当按下提交按钮时,isset($_POST['ta']工作,但文件不会在数据库内用"--------"更新。有什么建议我哪里错了吗?

if ( isset( $_POST['ta'] ) ) {
    $handle = fopen('saw42.TextGrid', "a");
    require('db_connection.php');
    fwrite( $handle, "-----------");
    fclose( $handle );
}

尝试这个

if(isset($_POST['ta'])){

    $handle=fopen('saw42.TextGrid',"a");
    require('db_connection.php'); // don't know why this line is here
    if ($handle===false){
        echo 'Unable to open file';
    }else{
        fwrite($handle,"-----------");
        fclose($handle);
    }
}

尝试检查您在Unix操作系统上的权限,您的文件是0644还是0444

I按ume,require-行失败,因此文件被打开,但在内部写入内容之前,脚本被中止。如果关闭了错误(在某些预配置系统上也是如此),则不会显示错误消息。

然而,这个问题有点令人困惑,因为如果数据库(在关系数据库系统的意义上,可以通过数据库服务器访问)是指数据库,那么代码不应该使用任何fopen-调用。如果"数据库"是一个简单的文件,那么db_connection.php的要求似乎不明确。

稍微澄清一下:

  1. (关系)数据库是可能相互引用的表(关系)的集合。此类数据库通常通过SQL语言或一些面向对象的接口(MySQL、MS-SQL、SQLITE等)进行填充和询问
  2. "某些数据"意义上的数据库也可以引用一个简单的文件。在这种情况下,您必须自己组织数据,并使用文件访问方法来访问它