Changeset 11991 for trunk/include/dblayer/functions_mysql.inc.php
- Timestamp:
- Aug 24, 2011, 9:50:54 PM (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/dblayer/functions_mysql.inc.php
r11485 r11991 351 351 * 352 352 * @param string table_name 353 * @param array dbfields354 * @param array data353 * @param array set_fields 354 * @param array where_fields 355 355 * @param int flags - if MASS_UPDATES_SKIP_EMPTY - empty values do not overwrite existing ones 356 356 * @return void 357 357 */ 358 function single_update($tablename, $dbfields, $data, $flags=0) 359 { 360 if (count($data) == 0) 358 function single_update($tablename, $set_fields, $where_fields, $flags=0) 359 { 360 if (count($set_fields) == 0) 361 { 361 362 return; 363 } 362 364 363 365 $query = ' … … 365 367 SET '; 366 368 $is_first = true; 367 foreach ($ dbfields['update'] as $key)369 foreach ($set_fields as $key => $value) 368 370 { 369 371 $separator = $is_first ? '' : ",\n "; 370 372 371 if (isset($ data[$key]) and $data[$key]!= '')372 { 373 $query.= $separator.$key.' = \''.$ data[$key].'\'';373 if (isset($value) and $value != '') 374 { 375 $query.= $separator.$key.' = \''.$value.'\''; 374 376 } 375 377 else … … 386 388 WHERE '; 387 389 $is_first = true; 388 foreach ($ dbfields['primary'] as $key)390 foreach ($where_fields as $key => $value) 389 391 { 390 392 if (!$is_first) … … 392 394 $query.= ' AND '; 393 395 } 394 if ( isset($ data[$key]) )395 { 396 $query.= $key.' = \''.$ data[$key].'\'';396 if ( isset($value) ) 397 { 398 $query.= $key.' = \''.$value.'\''; 397 399 } 398 400 else … … 472 474 473 475 /** 474 * inserts on line in a table476 * inserts one line in a table 475 477 * 476 478 * @param string table_name … … 479 481 * @return void 480 482 */ 481 function single_insert($table_name, $d bfields, $insert)482 { 483 if (count($ insert) != 0)483 function single_insert($table_name, $data) 484 { 485 if (count($data) != 0) 484 486 { 485 487 $query = ' 486 488 INSERT INTO '.$table_name.' 487 ('.implode(',', $dbfields).')489 ('.implode(',', array_keys($data)).') 488 490 VALUES'; 489 491 490 492 $query .= '('; 491 foreach ($dbfields as $field_id => $dbfield) 492 { 493 if ($field_id > 0) 493 $is_first = true; 494 foreach ($data as $key => $value) 495 { 496 if (!$is_first) 494 497 { 495 498 $query .= ','; 496 499 } 497 if (!isset($insert[$dbfield]) or $insert[$dbfield] === '') 500 else 501 { 502 $is_first = false; 503 } 504 505 if ($value === '') 498 506 { 499 507 $query .= 'NULL'; … … 501 509 else 502 510 { 503 $query .= "'".$ insert[$dbfield]."'";511 $query .= "'".$value."'"; 504 512 } 505 513 }
Note: See TracChangeset
for help on using the changeset viewer.