0
$id = $this->db->query("SELECT LAST_INSERT_ID() AS ID")->row();
$w = $this->db->query("UPDATE bet_type_default SET current = 0 WHERE id <> ".$id."  ");

エラー出力は次のとおりです。

PHP エラーが発生しました

重大度: 4096

メッセージ: クラス stdClass のオブジェクトを文字列に変換できませんでした

ファイル名: models/model_name.php

行番号: 29 データベース エラーが発生しました

エラー番号: 1064

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

UPDATE bet_type_default SET current = 0 WHERE id <>

ファイル名: C:\wamp\www\testing\system\database\DB_driver.php

ライン番号: 330

4

2 に答える 2

3

試す :

$row = $this->db->query("SELECT LAST_INSERT_ID() AS ID ")->row_array();

$w = $this->db->query(
             "UPDATE bet_type_default SET current = 0 WHERE id <> ".$row['ID']
     );

代わりに、アクティブなレコード パターンを使用する必要がありました。

$id = $this->db->insert_id();
$this->db->where('id <> ', $id)
         ->update('bet_type_default' , array('current'=>0));
于 2013-01-18T09:19:52.523 に答える
2

これを試してみてください-

$id = $this->db->insert_id();
$w = $this->db->query("UPDATE bet_type_default SET current = 0 WHERE id <> $id");
于 2013-01-18T09:29:38.943 に答える