1

外部 php ファイルから変数をインクルードしようとすると、次のエラーが表示されます: Unexpected T_VAR on line 1

これが私の外部phpコードです:

<?php var dbStr = 'host::,username::,password::,database'; ?>

それを含むPHPファイルは次のとおりです。

if($_POST['admincreate'] == "ok")
{
include('db.php');
$info = explode("::,", dbStr);
$con=mysqli_connect($info[0],$info[1],$info[2],$info[3]);
mysqli_query($con,"INSERT INTO admins (id, user, pass)
VALUES ('" . $_POST['user'] . "', '" . $_POST['pass'] . "',0)");
}

コードを次のように変更すると機能します

if($_POST['admincreate'] == "ok")
{
$dbStr = 'host::,username::,password::,database';
$info = explode("::,", $dbStr);
$con=mysqli_connect($info[0],$info[1],$info[2],$info[3]);
mysqli_query($con,"INSERT INTO admins (id, user, pass)
VALUES ('" . $_POST['user'] . "', '" . $_POST['pass'] . "',0)");
}

しかし、私は含まれているファイルが必要です。

含まれるファイルを次のように変更すると

<?php $dbStr = 'host::,username::,password::,database'; ?>

次のエラーが表示されます: 解析エラー: 構文エラー、予期しない '=' in .../db.php on line 1

そして、外部phpファイルが次のように変更されていることがわかりました

<?php  = 'host::,username::,password::,database'; ?>

エラーを出さずにこの文字列を適切に含めるにはどうすればよいですか?

PS 外部の php はメインの php ファイルで fopen と fwrite を使用して生成されます。また、ホスト、ユーザー名、パスワード、およびデータベースの実際の値は、気分が良くなったという理由だけで検閲されています。

前もって感謝します、-p0iz0n

4

1 に答える 1

5

var有効な PHP ではありません

<?php var dbStr = 'host::,username::,password::,database'; ?>

する必要があります

<?php $dbStr = 'host::,username::,password::,database'; ?>

興味深いことに、2 番目の例ではそれが正しく行われています。

于 2013-05-05T23:36:18.243 に答える