составить метод update

193
16 июня 2018, 22:50

хочу с помощью строковых операторов создать sql запрос update есть рабочий пример на insert Данные поступают из $_POST пример $array = $_POST["pet"] = "cat"; где ключи равны именам столбца таблицы, а значение будет попадать в бд, как значение

   $sql  = "UPDATE ". $nameTable ." SET"; 
 
   // implode keys of $array... 
   $sql .= " (`".implode("`, `", array_keys($array))."`)"; 
 
   // implode values of $array... 
   $sql .= " VALUES ('".implode("', '", $array)."') "; 
 
   $stmt = DB::prepare($sql); 
   $stmt->execute();

рабочий пример с insert into

   class SqlQuery 
   { 
   	 
   	public function InsertText($array, $nameTable) 
   	{ 
    // build query... 
   $sql  = "INSERT INTO ". $nameTable; 
 
   // implode keys of $array... 
   $sql .= " (`".implode("`, `", array_keys($array))."`)"; 
 
   // implode values of $array... 
   $sql .= " VALUES ('".implode("', '", $array)."') "; 
 
   $stmt = DB::prepare($sql); 
   $stmt->execute(); 
 
   $e = DB::lastInsertId(); 
 
   return $e; 
   	} 
 
    public function UpdateText($array, $nameTable) 
    { 
    // build query... 
 
 
   $sql  = "UPDATE ". $nameTable ." SET"; 
 
   // implode keys of $array... 
   $sql .= " (`".implode("`, `", array_keys($array))."`)"; 
 
   // implode values of $array... 
   $sql .= " VALUES ('".implode("', '", $array)."') "; 
 
   $stmt = DB::prepare($sql); 
   $stmt->execute(); 
 
   $e = DB::lastInsertId(); 
 
   return $e; 
    } 
   	 
   }

Answer 1

Сделал чуть позже полностью класс выложу

$array = $_POST; 
 
$arrVal = $array; 
 
$arrKey = array_keys($array); 
 
 
$all = []; 
 
foreach ($arrKey as $key => $val) { 
  $all[] = "`".$arrKey[$key]."` = '".$arrVal[$val]."'"; 
} 
 
$allStrong = implode(",", $all);

READ ALSO
Как вывести случайный элемент массива?

Как вывести случайный элемент массива?

Как в моем случае вывести случайное число?

220
Виджеты ВК и пользователи из Украины

Виджеты ВК и пользователи из Украины

Столкнулся с такой трудностью: если установлен виджет, например, группы вк, и у пользователя из Украины нет VPN, то страница грузится бесконечно...

191