» » » » mysql_write_array - запись массива данных в таблицу MySQL

mysql_write_array - запись массива данных в таблицу MySQL

функция записывает данные в таблицу

// функция записывает данные в таблицу
// если id нет или =0 будет добавлена запись
// функция маскирует недопустимые символы, учитывает get_magic_quotes_gpc
// если utf=true, то производится преобразование из UTF-8 в win-1251
function mysql_write_array($tbl,$arr, $utf=false){
  $Columns=array();
  $result=mysql_query("SHOW COLUMNS FROM `{$tbl}`");
  while($col = mysql_fetch_row($result))$Columns[$col[0]]=$col[1]; // индекс - имя, значение - тип
  if($utf||get_magic_quotes_gpc())
     foreach ($Columns as $key => $value)
    if(isset($arr[$key])){
    if(strpos($value, array('char','text'))!==false){
        if(get_magic_quotes_gpc())$arr[$key]=stripslashes($arr[$key]);
        if($utf)$arr[$key]=trim(@iconv("UTF-8", "windows-1251//IGNORE", $arr[$key]));
    }if(strpos($value, 'int')!==false)$arr[$key]=intval($arr[$key]);
    elseif(strpos($value,'date')!==false)$arr[$key]=date("Y-m-d", $arr[$key]);
    elseif(strpos($value,'time')!==false)$arr[$key]=date("Y-m-d H:i:s", $arr[$key]);
    elseif(strpos($value,'floatval')!==false)$arr[$key]=str_replace(',','.',floatval($arr[$key]));
    }
   $add='';
   if(isset($arr['id']) && intval($arr['id'])>0){
   foreach ($Columns as $key => $value){
    if($key=='id'){}
        elseif(isset($arr[$key]))$add.=','.$key.'="'.$arr[$key].'"';}
   if($add)$add='UPDATE IGNORE '.$tbl.' SET '.substr($add,1).' WHERE id="'.intval($arr['id']).'"';
   else return false;
   }else{$add1='';
   foreach ($Columns as $key => $value){
    if($key=='id'){}
        elseif(isset($arr[$key])){
        $add.=','.$key;
        $add1.=',"'.$arr[$key].'"';}
   }
   if($add)$add='INSERT INTO '.$tbl.' ('.substr($add,1).') VALUES ('.substr($add1,1).')';
   else return false;
   }
echo $add.'<br>';
sql($add);
return mysql_affected_rows()>0;
}



Пример использования:

if (isset($_POST['id'])) {
  if(mysql_write_array('user', $_POST)) echo " Сохранил запись!";
  else echo "Ошибка записи ".$_POST['id']."!";

скачать dle 11.0фильмы бесплатно
[xfgiven_url] [/xfgiven_url] [xfgiven_vbversion][/xfgiven_vbversion] [xfgiven_modversion][/xfgiven_modversion] [xfgiven_supported][/xfgiven_supported] [xfgiven_dbchanges][/xfgiven_dbchanges] [xfgiven_codechanges][/xfgiven_codechanges] [xfgiven_usesplugins][/xfgiven_usesplugins] [xfgiven_templateedit][/xfgiven_templateedit] [xfgiven_autotemplate][/xfgiven_autotemplate] [xfgiven_addfiles][/xfgiven_addfiles] [xfgiven_translations][/xfgiven_translations]

Дополнительная информация : Extra Info

Источник
Версия Vbulletin:Vbulletin version[xfvalue_vbversion]
Версия модуля:Mod version[xfvalue_modversion]
Поддержка: Supported:[xfvalue_supported]
Изменение БД: DB changes:[xfvalue_dbchanges]
Правка кода: Code changes:[xfvalue_codechanges]
Плагины: Use plugins:[xfvalue_usesplugins]
Правка шаблонов: Template edits:[xfvalue_templateedit]
Автоправка шаблонов: Auto Template:[xfvalue_autotemplate]
Доп.файлы: Add files:[xfvalue_addfiles]
Доп. языки: Translations:[xfvalue_translations]

File engine/modules/userbox.php not found.

Комментариев пока нет, добавьте свой!

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.

{mainlink_code_links}
{mainlink_code_ads}
{sape_links}
File engine/modules/ed-shortbar/bar.php not found.