0

私はphpで比較的新しいです。データベースの「残す」テーブルに値を挿入しているときに直面している問題。エラーは以下のとおりです。

SQL 構文にエラーがあります。MySQL サーバーのバージョンに対応するマニュアルを参照して、1 行目の 'where lid = 4' 付近で使用する正しい構文を確認してください。

ここに私のコードがあります

<?php

include_once 'config.php';
$accept = "accepted";
mysql_query("insert into `leave` (`action`) values ('$accept') where lid =           ".$_GET['id'] , $dbCon ) or die(mysql_error());  


header('location: admin_leave.php'); 
?>
4

2 に答える 2

0

これには挿入ではなく更新を使用する必要があります

mysql_query("update leave set `action` ='$accept' where lid = ".$_GET['id'] , $dbCon ) or die(mysql_error()); 

mysql_* を使用しないでください。リンクは減価償却されています: http://php.net/manual/en/function.mysql-db-query.php。どちらかを使用PDO/mysqli

于 2013-04-21T13:15:53.090 に答える
0

INSERTで使用できませんWHERE。探している可能性がありますUPDATE

mysql_query("UPDATE `leave` SET `action`='$accept' where lid = ".$_GET['id'] , $dbCon ) or die(mysql_error()); 

あなたの質問は に対して完全にオープンですSQL Injection。準備済みステートメントでMysqliORの使用を開始します。PDO

于 2013-04-21T13:16:07.830 に答える