-1

この行でエラーが発生する php でアプリを作成しています #

$sql="INSERT INTO table ( `rollnum`,'sessionid', `class`, `subject`, `theory`, `practical`, `type_of`, `term`) VALUES ('$students['rollnum']', '$session','$class','$subject['id']','$_REQUEST[$subject['id'].'_'.$students['rollnum'].'_th']','$_REQUEST[$subject['id'].'_'.$students['rollnum'].'_pr']', '$examtype', '$examsubtype')";

この行の何が問題なのかわかりません。私はオンラインプラットフォームでもチェックしました.彼らは、ライン#(上記)にエラーがあると同じことを言いました. これで私を助けることができる人は誰でもありがとう

4

4 に答える 4

3

二重引用符で囲まれた文字列で変数を中かっこで囲む必要がある可能性があります。

$string = "I want to use {$variable1} and {$variable['thisKey']}";

または、実行が少し高速な次のもの。

$string = 'I want to use'.$variable1.'and '.$variable['thisKey'];

これで当面の問題は解決するはずですが、クエリはインジェクションに対して非常にオープンであり、特に$_REQUESTクエリ文字列で正しく使用している場合は非常に悪い可能性があります。クエリステートメントを実行する前に準備を検討し、すべての危険なものがエスケープされていることを確認することをお勧めします.

この回答でここでクエリを実行する安全な方法を含む別の質問に答えました

于 2012-07-05T14:33:48.187 に答える
1

文字列内で変数名を中かっこで囲む必要があります。

$sql="INSERT INTO stdexamrecord ( `rollnum`,'sessionid', `class`, `subject`, `theory`, `practical`, `type_of`, `term`) VALUES (
'${students['rollnum']}', 
'$session',
'$class',
'${subject['id']}',
' " . $_REQUEST[ $subject['id'] . '_' . $students['rollnum'] . '_th'] . "',
' " . $_REQUEST[ $subject['id'] . '_' . $students['rollnum'] . '_pr'] . "',
'$examtype', 
'$examsubtype')";
于 2012-07-05T14:24:48.493 に答える
1

PHP 環境に次の設定があった場合display_errors = On; error_reporting = E_ALL:

PHP Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING)

この例のように:

$array['value'] = 'test';
echo "$array['value']";

次のようになります。

echo "".$array['value']."";
echo "{$array['value']}";

とにかく、数字キーを使用できます:

$array[0] = 'test';
echo "$array[0]";
于 2012-07-05T14:29:28.643 に答える
-1

正しい場所でエラーを見つけるのに役立つ可能性のある Dreamweaver または Net Bean を使用してみてください。

于 2012-08-26T20:29:39.293 に答える