Introducing db_insert() and db_update(), with immediate usage in wp_insert_post(). fixes #5178

git-svn-id: https://develop.svn.wordpress.org/trunk@6221 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Mark Jaquith
2007-10-10 22:01:40 +00:00
parent 000bbba87b
commit 67cb7b99ef
2 changed files with 39 additions and 34 deletions
+29
View File
@@ -250,6 +250,35 @@ class wpdb {
return $return_val;
}
/**
* Insert an array of data into a table
* @param string $table WARNING: not sanitized!
* @param array $data should not already be SQL-escaped
* @return mixed results of $this->query()
*/
function db_insert($table, $data) {
$data = add_magic_quotes($data);
$fields = array_keys($data);
return $this->query("INSERT INTO $table (`" . implode('`,`',$fields) . "`) VALUES ('".implode("','",$data)."')");
}
/**
* Update a row in the table with an array of data
* @param string $table WARNING: not sanitized!
* @param array $data should not already be SQL-escaped
* @param string $where_col the column of the WHERE statement. WARNING: not sanitized!
* @param string $where_val the value of the WHERE statement. Should not already be SQL-escaped.
* @return mixed results of $this->query()
*/
function db_update($table, $data, $where_col, $where_val){
$data = add_magic_quotes($data);
$bits = array();
foreach ( array_keys($data) as $k )
$bits[] = "`$k`='$data[$k]'";
$where_val = $wpdb->escape($where_val);
return $this->query("UPDATE $table SET ".implode(', ',$bits)." WHERE $where_col = '$where_val' LIMIT 1");
}
/**
* Get one variable from the database
* @param string $query (can be null as well, for caching, see codex)