PHP はコンピュータでは正常に動作しますが、Linux ターミナルでは動作しません。 解決策: 頭痛がしています
PHP ファイルの内容:
致命的なエラーが発生し続けます。非オブジェクト オンライン 16
でのメンバー関数 query() の呼び出しです。
$DB->connection->query("create table test(id integer Primary key,name varchar(50),grade varchar(50),score varchar(50))");この行が間違っているというプロンプトが表示され続けます. ここに投稿しました
コンピューターで実行すると、まったく正常にデータを挿入できますが、Linux ターミナルで実行すると、エラーが表示されます。
header("content-Type: text/html; charset=Utf-8");
//uiceshi.html ページから送信されたデータを取得します
$fname = $_POST['fname'] //名前
;
$fgrade = $_POST['fgrade'] //グレード
;
$fscore = $_POST['fscore'] //スコア
;
//$sql = 'テスト値に挿入 ();';
//データベースインスタンスを作成します
$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))"); この行でエラーが表示されます
//insert ステートメントを実行します
//$result = $DB->query("insert into test(name,grade,score)values('".$fname."','".$fgrade."','".$fscore." ')");
$result = $DB->connection->query("insert into test(name,grade,score) names('".$fname."','".$fgrade."','".$fscore ."')");
//返された結果は主にデバッグに使用されます
print_r($result);
//SQLite クラス
クラス SQLite
{
関数 __construct($file)
{
を試してください
{
$this->connection=new PDO('sqlite:'.$file);
}
catch(PDOException $e)
{
を試してください
{
$this->connection=new PDO('sqlite2:'.$file);
}
catch(PDOException $e)
{
exit('エラー!');
}
}
}
関数 __destruct()
{
$this->connection=null
}
function query($sql) //データの更新と削除に使用できる SQL を直接実行します
{
$this->connection->query($sql)を返します
}
function getlist($sql) //レコードリストを取得
{
$recordlist=array();
foreach($this->query($sql) as $rstmp)
{
$recordlist[]=$rstmp;
}
$レコードリストを返します
}
関数実行($sql)
{
return $this->query($sql)->fetch();
}
関数 RecordArray($sql)
{
return $this->query($sql)->fetchAll();
}