0

mysql テーブルに 4 つの変数を挿入しようとしています。次の mysql INSERT ステートメントは T_STRING エラーを生成します。私のエラーが構文のどこにあるのか誰かがアドバイスできれば幸いです。

function add_student($name, $phone, $email, $id) {
global $modx;
$session_id = intval($id, 10);
$query = $modx->db->INSERT INTO `xtra_students`(`name`, `phone`, `email`, `session_id`) VALUES ('$name', '$phone', '$email', '$session_id');    
return $query;
}

最初の 3 つの変数は varchar で、$session_id は int(4) です。

4

3 に答える 3

2

関数呼び出しと文字列を囲む引用符がありません:

$query = $modx->db->query("INSERT INTO `xtra_students`(`name`, `phone`, `email`, `session_id`) VALUES ('$name', '$phone', '$email', '$session_id')");    
于 2014-09-08T06:51:55.523 に答える
1
$query = $modx->db->INSERT INTO `xtra_students`(`name`, `phone`, `email`, `session_id`) VALUES ('$name', '$phone', '$email', '$session_id');    

この行が問題です。mysql クエリを引用符で囲む必要があります。何があなたのものかわかりませんが、次の$modx->db->ようになります。

$modx->db->query("INSERT INTO `xtra_students`(`name`, `phone`, `email`, `session_id`) VALUES ('$name', '$phone', '$email', '$session_id')");   
于 2014-09-08T06:52:14.963 に答える
1
$modx->db->query("INSERT INTO `xtra_students`(`name`, `phone`, `email`, `session_id`) VALUES ('$name', '$phone', '$email', '$session_id')");
于 2014-09-08T07:51:58.143 に答える