In meiner Datenbank habe ich eine letzte und eine aktuelle Spalte für datetime. Nur um ein Auge zu behalten, wann jemand zuletzt einen gültigen Login für den Dienst verwendet hat, den ich aufbaue.
Was ich wissen möchte, ist, dass es möglich ist, eine Spalte in einer Zeile mit einer anderen Spalte aus dieser Zeile zu aktualisieren, während gleichzeitig die andere Spalte aktualisiert wird
Dh: Setzen Sie den Letzten als den aktuellen Strom, und setzen Sie dann den Strom mit dem Datum, das im Wesentlichen jetzt ist.
Sinn machen?
Versuchen Sie es so ..
$data=array('current_login'=>date('Y-m-d H:i:s'));
$this->db->set('last_login','current_login',false);
$this->db->where('id','some_id');
$this->db->update('login_table',$data);
abfrage generiert durch obigen Code: -
UPDATE login_table
SET last_login = current_login, current_login
= '2018-01-18 15:24:13' WHERE id
= 'some_id'
wenn Sie nur eine einzelne Spalte einer Tabellenzeile aktualisieren möchten, können Sie Folgendes verwenden:
$this->db->set('column_header', $value); //value that used to update column
$this->db->where('column_id', $column_id_value); //which row want to upgrade
$this->db->update('table_name'); //table name
$this->db->set('usage', 'usage'); //Set the column name and which value to set..
$this->db->where('tag', 'Java'); //set column_name and value in which row need to update
$this->db->update('tags'); //Set your table name
Versuche dies...
$data = array(
'name' => $_POST['name'] ,
'groupname' => $_POST['groupname'],
'age' => $_POST['age']
);
$this->db->where('id', $_POST['id']);
$this->db->update('tbl_user', $data);
Ich verwende diese Funktion für alle Updates auf meinen CI-Sites
function _updateRowWhere($table, $where = array(), $data = array()) {
$this->db->where($where);
$this->db->update($table, $data);
}
$id= $this->input->Post('edit_id');
$date= $this->input->Post('date');
$title=$this->input->Post('title');
$content=$this->input->Post('content');
$value=array('date'=>$date,'content'=>$content,'title'=>$title);
$this->db->where('course_id',$id);
if( $this->db->update('course',$value))
{
return true;
}
else
{
return false;
}
Alternative Kurzanleitung für das Schreiben von Aktualisierungsabfragen lautet wie folgt:
$this->db->update('student',array('class'=>'xyz','name'=>'abc'),array('stud_id'=>20);
setze Klasse xyz, Name abc wobei Stud_id = 20 in der "Schüler" -Tabelle.
Versuchen Sie den folgenden Code:
$data = array(
'name' = > $_POST['name'] ,
'groupname'= > $_POST['groupname'],
'age' = > $_POST['age']
);
$this->db->where('id', $_POST['id']);
$this->db->update('tabname', $data);