1

データベースとこのコードを別のテーブルで正常に動作するように更新したいのですが、ここでエラーが発生し、次のメッセージが表示されます。

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

<?php
$sel_item = "SELECT * FROM `employees` where id=".$_GET['emp_id'];
$done_item = mysql_query($sel_item);
$get_item = mysql_fetch_array($done_item);

if(isset($_POST['edit']) ){
    $upd= "UPDATE `employees` SET 
    `emp_no`='".$_POST['name']."',
    WHERE `id`='".$_POST['id']."";
    $do_upd = mysql_query($upd) or die(mysql_error());
}
?>


<form action="" method="post" enctype="multipart/form-data">

         <table class="append-row" width="100%" border="0" bgcolor="#006699"  height="60px" align="left" 
        style="padding:0 30px;">
          <tr>

           <td><input type="text" name="name" id="name" placeholder="name"  value="<? php echo $get_item['emp_no'];?>"></td>
          <input type="hidden" name="id" id="id"    value="<?php echo $get_item['id'];?>" >

          <td><input type="submit" name="edit" id="edit" value="edite"></td>    

      </tr>

        </table>

     </form>
4

4 に答える 4

3

UPDATE ステートメントの $_POST['id'] の後に終了の一重引用符がありません。また、WHERE 条件の前に不要なコンマがあります。

試す:

$upd= "UPDATE `employees` SET `emp_no`='".$_POST['name']."' WHERE `id`='".$_POST['id']."'";
于 2013-05-29T16:55:00.973 に答える
1
$upd= "UPDATE `employees` SET `emp_no`='".$_POST['name']."', WHERE `id`='".$_POST['id'].""; 
$do_upd = mysql_query($upd) or die(mysql_error());

' を見逃しています...

$upd= "UPDATE `employees` SET `emp_no`='".$_POST['name']."', WHERE `id`='".$_POST['id']."'"; 

「WHERE」の前のコンマも必要ありません

于 2013-05-29T16:55:53.773 に答える
0

emp_no='".$_POST['name']."',

コンマはあなたのSQLを壊しています

于 2013-05-29T17:15:57.787 に答える