function save_question_group($data, $group = '') { global $conn; if ($group) { do_update($data, array('id' => $group), 'vcn_question_group'); } else { do_insert($data, 'vcn_question_group'); } }
public function inserir($id_personagem, $nome) { $ouro = TERRENO_INICIAL * TERRENO_CUSTO; $regraPersonagem = new Personagem(); $regraPersonagem->gastarOuro($id_personagem, $ouro); $query = "\n INSERT INTO cidade (\n id_personagem,\n nome\n ) VALUES (\n '" . do_escape($id_personagem) . "',\n '" . do_escape($nome) . "'\n )\n "; $id_cidade = do_insert($query); $this->adicionarTerreno($id_personagem, $id_cidade, TERRENO_INICIAL); return $id_cidade; }
function save_customerwork() { //cmd/save_customerwork.html $customerdata = get_session('customerdata'); //customer data if (!$customerdata) { //not login json_output('requireLogin'); return ''; } //history preg_match('#[^-]+$#', $_POST['history'], $r); //final result $history = array('customer_id' => $customerdata->id, 'company' => $_POST['company'], 'salary' => $_POST['sal'], 'save_history' => $_POST['history'], 'result' => $r[0], 'post_date' => date("Y-m-d"), 'post_time' => date('H:i:s a'), 'loan' => preg_replace('#\\.#', '', $_POST['loan']), 'note' => 'Mục đích sử dụng:' . PHP_EOL . $_POST['usedfor'] . PHP_EOL . ',Thời gian chúng tôi liên hệ:' . $_POST['contacttime']); if (isset($_POST['modify'])) { //update history do_update($history, array('id' => $_POST['modify']), 'vcn_histories'); $hid = $_POST['modify']; } else { do_insert($history, 'vcn_histories'); $hid = mysql_insert_id(); //history id } //update histories1 that save answer text $history_text = array(); //multi rows $historyt = json_decode($_POST['historyt']); //decode answers_text foreach ($historyt as $answer_id => $text) { $history_t = array('answer_id' => $answer_id, 'answer_text' => $text, 'hid' => $hid); $history_text[] = $history_t; if (isset($_POST['modify'])) { //update single answer text do_update($history_t, array('hid' => $_POST['modify']), 'vcn_histories1'); } } if (!isset($_POST['modify'])) { do_insert($history_text, 'vcn_histories1'); } json_output($hid); //return new history }
private function inserirTag($id_comentario, $tag) { $query = "\n INSERT INTO comentario_tag (\n id_comentario,\n tag\n ) VALUES (\n '" . do_escape($id_comentario) . "',\n '" . do_escape($tag) . "'\n )\n "; do_insert($query); }
//qid if (isset($answer_ids[$i])) { do_update($answer, array('id' => $answer_ids[$i]), 'vcn_answers'); } else { //new answer to be added $new_answers[] = $answer; } } } if (count($new_answers) && _POST('modify') && is_numeric(_POST('modify'))) { //new answers to be added do_insert($new_answers, 'vcn_answers'); } //add answers to question if (!_POST('modify') || !is_numeric(_POST('modify'))) { do_insert($answers, 'vcn_answers'); } //delete answers if (_POST('deletes')) { do_delete(explode(',', trim(_POST('deletes'), ',')), 'vcn_answers', 'id'); //delete old answers } } //delete question if (_GET('del')) { delete_qdata(_GET('del')); } //data if (_GET('edit')) { $data['result'] = get(_GET('edit')); //get question answers
public function inserir() { if (is_null($this->arquivo) || trim($this->arquivo) == '') { $this->arquivo = md5(uniqid()) . "." . $this->pegarExtensao(); $filepath = dirname(__DIR__) . "/upload/{$this->arquivo}"; $this->save($filepath, $this->image_type); } $query = "\n INSERT INTO arte (\n id_jogador,\n cod_tipo,\n data_inclusao,\n ultima_alteracao,\n nome,\n autor,\n arquivo,\n nome_original,\n descricao\n ) VALUES (\n '" . do_escape(ID_JOGADOR) . "',\n '" . do_escape($this->cod_tipo) . "',\n NOW(),\n NOW(),\n '" . do_escape($this->nome) . "',\n '" . do_escape($this->autor) . "',\n '" . do_escape($this->arquivo) . "',\n '" . do_escape($this->nome_original) . "',\n '" . do_escape($this->descricao) . "'\n )\n "; $this->id_arte = do_insert($query); Feed::novaArte($this->id_arte); }
public function alterar() { if (is_null($this->slug) || trim($this->slug) == '') { $this->slug = sanitize_slug($this->nome); } if (is_numeric($this->slug)) { $this->slug = sanitize_slug($this->nome); } $query = "\n UPDATE jogador SET (\n email = '" . do_escape($this->email) . "',\n slug = '" . do_escape($this->slug) . "',\n nome = '" . do_escape($this->nome) . "',\n senha = '" . do_escape($this->senha) . "'\n WHERE id_jogador = '" . do_escape($this->id_jogador) . "'\n "; do_insert($query); }
public function marcar($id_livro, $id_capitulo, $num_versiculo, $tipo = 1) { $usuario = $this->pegarAtual(); if (!is_null($usuario)) { $query = "\n SELECT tipo\n FROM usuario_versiculo\n WHERE id_usuario = '" . do_escape($usuario->id_usuario) . "'\n AND id_livro = '" . do_escape($id_livro) . "'\n AND id_capitulo = '" . do_escape($id_capitulo) . "'\n AND num_versiculo = '" . do_escape($num_versiculo) . "'\n AND tipo = '" . do_escape($tipo) . "'\n "; $tipoAtual = intval(get_value($query, 'tipo')); if ($tipoAtual > 0) { $query = "\n DELETE FROM usuario_versiculo\n WHERE id_usuario = '" . do_escape($usuario->id_usuario) . "'\n AND id_livro = '" . do_escape($id_livro) . "'\n AND id_capitulo = '" . do_escape($id_capitulo) . "'\n AND num_versiculo = '" . do_escape($num_versiculo) . "'\n AND tipo = '" . do_escape($tipo) . "'\n "; do_delete($query); return false; } else { $query = "\n INSERT INTO usuario_versiculo (\n id_usuario,\n id_livro,\n id_capitulo,\n num_versiculo,\n tipo\n ) VALUES (\n '" . do_escape($usuario->id_usuario) . "',\n '" . do_escape($id_livro) . "',\n '" . do_escape($id_capitulo) . "',\n '" . do_escape($num_versiculo) . "',\n '" . do_escape($tipo) . "'\n )\n "; do_insert($query); return true; } } return false; }
public static function inserir($feed) { $query = "\n INSERT INTO feed (\n id_jogador,\n cod_tipo,\n id_pai,\n id_arte,\n id_campanha,\n id_mapa,\n id_personagem,\n data_inclusao,\n ultima_alteracao,\n id_sessao,\n url,\n comentario\n ) VALUES (\n '" . do_escape(ID_JOGADOR) . "',\n '" . do_escape($feed->cod_tipo) . "',\n " . do_full_escape($feed->id_pai) . ",\n " . do_full_escape($feed->id_arte) . ",\n " . do_full_escape($feed->id_campanha) . ",\n " . do_full_escape($feed->id_mapa) . ",\n " . do_full_escape($feed->id_personagem) . ",\n NOW(),\n NOW(),\n " . do_full_escape($feed->id_sessao) . ",\n " . do_full_escape($feed->url) . ",\n " . do_full_escape($feed->comentario) . "\n )\n "; $id_feed = do_insert($query); if (!is_null($feed->id_pai) && $feed->id_pai > 0) { $query = "\n UPDATE feed SET \n ultima_alteracao = NOW()\n WHERE id_feed = " . do_escape($feed->id_pai) . "\n "; do_update($query); } return $id_feed; }
public function inserir($personagem) { $query = "\n INSERT INTO quest (\n id_personagem,\n id_tipo,\n data_inclusao,\n objetivo, \n cod_situacao\n ) VALUES (\n '" . do_escape($personagem->id_personagem) . "',\n '" . do_escape($personagem->id_tipo) . "',\n NOW(),\n " . do_escape_full($personagem->objetivo) . ",\n '" . do_escape($personagem->cod_situacao) . "'\n )\n "; return do_insert($query); }
public function treinar($id_personagem, $pericia_slug) { $query = "\n SELECT\n experiencia,\n ouro,\n turno\n FROM personagem\n WHERE id_personagem = '" . do_escape($id_personagem) . "'\n "; $personagem = get_first_result($query); $query = "\n SELECT \n bonus,\n experiencia,\n id_professor\n FROM pericia\n WHERE id_personagem = '" . do_escape($id_personagem) . "'\n AND slug = '" . do_escape($pericia_slug) . "'\n "; $pericia = get_first_result($query); if (is_null($pericia)) { $custoXP = $this->custoPericiaXP(0); $custoTurno = $this->custoPericiaTurno(0); $this->gastarXp($id_personagem, $custoXP); $this->gastarTurno($id_personagem, $custoTurno); $query = "\n INSERT INTO pericia (\n id_personagem,\n slug,\n bonus,\n experiencia\n ) VALUES (\n '" . do_escape($id_personagem) . "',\n '" . do_escape($pericia_slug) . "',\n 0,\n 20\n )\n "; do_insert($query); } else { $custoXP = $this->custoPericiaXP($pericia->bonus); $custoTurno = $this->custoPericiaTurno($pericia->bonus); $this->gastarXp($id_personagem, $custoXP); $this->gastarTurno($id_personagem, $custoTurno); $bonus = $pericia->bonus; $experiencia = $pericia->experiencia; $experiencia = $experiencia + 20; if ($experiencia >= 100) { $bonus++; $experiencia -= 100; } $query = "\n UPDATE pericia SET\n bonus = '" . do_escape($bonus) . "',\n experiencia = '" . do_escape($experiencia) . "'\n WHERE id_personagem = '" . do_escape($id_personagem) . "'\n AND slug = '" . do_escape($pericia_slug) . "'\n "; do_update($query); } }
function insert_sql_data( $db_conn, $p_campaigns, $p_headers, $p_details ) // insert the header and detail data into the file // with appropriate safeguards to ensure full // completion or rollback of the transaction. { GLOBAL $msg_log; $success = TRUE; // Wrap all this in a transaction // First, turn off autocommit $qry = "set autocommit=0"; //pre_echo( $qry ); $success = mysql_query( $qry, $db_conn ); // Second, take care of all ALTER TABLE queries. Due to a (documented) // glitch in MySQL, these commands force a transaction to commit, // which sucks. if ($success) { // Create the temp_header table $qry = "CREATE TEMPORARY TABLE temp_header LIKE contract_header"; //pre_echo( $qry ); $success = mysql_query( $qry, $db_conn ); if (!$success) { message_log_append( $msg_log, mysql_error( $db_conn ), MSG_LOG_ERROR ); } } if ($success) { // Create the temp_detail table $qry = "CREATE TEMPORARY TABLE temp_detail LIKE contract_detail"; //pre_echo( $qry ); $success = mysql_query( $qry, $db_conn ); if (!$success) { message_log_append( $msg_log, mysql_error( $db_conn ), MSG_LOG_ERROR ); } } if ($success) { // Delete the Seq field from table temp_header $qry = "ALTER TABLE temp_header DROP COLUMN Seq"; //pre_echo( $qry ); $success = mysql_query( $qry, $db_conn ); if (!$success) { message_log_append( $msg_log, mysql_error( $db_conn ), MSG_LOG_ERROR ); } } if ($success) { // Delete the Line column from table temp_detail $qry = "ALTER TABLE temp_detail DROP COLUMN Line"; //pre_echo( $qry ); $success = mysql_query( $qry, $db_conn ); if (!$success) { message_log_append( $msg_log, mysql_error( $db_conn ), MSG_LOG_ERROR ); } } // loop through the campaigns, headers, and details to insert the // data into the SQL database. Keep solid track of all error // results so that we can ROLLBACK on any error. if ($success) { //echo "<pre>"; //var_dump( $p_campaigns ); echo "</pre><br>"; $success = begin( $db_conn ); if (!$success) { message_log_append( $msg_log, "Error in START TRANSACTION: " . mysql_error( $db_conn ), MSG_LOG_ERROR ); } } // do the work here, and keep track of $success // If we need to create a new agency record, do that here. $new_agency = FALSE; if ($success && is_null( $p_campaigns[0][ 'Agency Record' ])) { $agent_name = $p_campaigns[0][ 'Agency Name' ]; $rate = DEFAULT_AGENCY_RATE / 10; if ($success = agency_insert( $db_conn, $agent_name, $rate, $aindex )) { $p_campaigns[0][ 'Agency Record' ] = agency_record( $agent_name, OPERATOR_NAME ); $success = !is_null( $p_campaigns[0][ 'Agency Record' ]); } // if agency_insert if ($success) { $new_agency = TRUE; message_log_append( $msg_log, "Agency created: " . "Seq = $aindex, Name = '$agent_name'", MSG_LOG_WARNING ); } else { message_log_append( $msg_log, "Error while creating " . "Agency '$agent_name': " . mysql_error( $db_conn ), MSG_LOG_ERROR ); } } // if null agency record // If we need to create a new customer record, do that here. $new_customer = FALSE; if ($success && is_null( $p_campaigns[0][ 'Customer Record' ])) { $cust_name = $p_campaigns[0][ 'Customer Name' ]; $rate = DEFAULT_CUST_DISCOUNT; if ($success = customer_insert( $db_conn, $cust_name, $rate, $cindex )) { $p_campaigns[0][ 'Customer Record' ] = cust_record( $cust_name, OPERATOR_NAME ); $success = !is_null( $p_campaigns[0][ 'Customer Record' ]); } // if customer_insert if ($success) { $new_customer = TRUE; message_log_append( $msg_log, "Customer created: " . "Seq = $cindex, Name = '$cust_name'", MSG_LOG_WARNING ); } else { message_log_append( $msg_log, "Error while creating " . "Customer '$cust_name' " . mysql_error( $db_conn ), MSG_LOG_ERROR ); } } // if null customer record if ($success) { // build the list of header fields, in order with 'quote required' flag // [n][0] is field name, [n][1] is boolean T=quote required, F=not $hdr_flds = build_header_field_array(); // A SQL INSERT statement lead-in $hdr_sql = "INSERT INTO temp_header ( "; $hdr_sql .= fld_list( $hdr_flds ) . ") VALUES\n"; // build the list of detail fields, in order with 'quote required' flag // [n][0] is field name, [n][1] is boolean T=quote required, F=not $det_flds = build_detail_field_array(); // A SQL INSERT statement lead-in $det_sql = "INSERT INTO temp_detail ( "; $det_sql .= fld_list( $det_flds ) . ") VALUES "; // Here we go. We'll loop through each contract header record, // and its accompanying detail records. $n_inserted = 0; while ($success && (list( $key ) = each( $p_headers ))) { if (count( $p_details[ $key ] ) > 0) { // If we created a new agency or customer above, update // the respective header fields. if ($new_customer) { $p_headers[ $key ][ 'CIndex' ] = $cindex; $p_headers[ $key ][ 'Discount' ] = $p_campaigns[0][ 'Customer Record' ][ 'Discount' ]; } if ($new_agency) { $p_headers[ $key ][ 'AIndex' ] = $aindex; $p_headers[ $key ][ 'AgencyComm' ] = $p_campaigns[0][ 'Agency Record' ][ 'Rate' ]; } $row = data_values( $hdr_flds, $p_headers[ $key ] ); $sql_header = $hdr_sql; // INSERT INTO ... VALUES $sql_header .= "(" . $row . ");"; $rows = ""; foreach ($p_details[ $key ] as $line) { $rows .= ",\n( " . data_values( $det_flds, $line ) . " )"; } $rows = substr( $rows, 1 ); // remove comma-newline $sql_detail = $det_sql; // INSERT INTO ... VALUES $sql_detail .= $rows; if ($success = do_insert( $db_conn, $sql_header, $sql_detail )) { $n_inserted++; } } // if detail count > 0 } // while success and each key } // if success if ($success) { $success = commit( $db_conn ); if ($success) { message_log_append( $msg_log, "$n_inserted contract" . ($n_inserted == 1 ? '' : 's') . " imported" ); } else { message_log_append( $msg_log, "Error in COMMIT TRANSACTION: " . mysql_error( $db_conn ), MSG_LOG_ERROR ); if (!rollback( $db_conn )) { message_log_append( $msg_log, "Error in ROLLBACK TRANSACTION: " . mysql_error( $db_conn ), MSG_LOG_ERROR ); } } } else { if (!rollback( $db_conn )) { message_log_append( $msg_log, "Error in ROLLBACK TRANSACTION: " . mysql_error( $db_conn ), MSG_LOG_ERROR ); } } // if success return( $success ); } // insert_sql_data
function insert_if_new($table, $where, $values, $id) { #use for rows that should be unique $result = do_select("SELECT * from {$table} WHERE {$where}"); if ($result == 0) { return do_insert("INSERT INTO {$table} VALUES({$values})"); } elseif ($result[0]['count'] == 1) { return $result[1][$id]; } else { return false; } }
public function inserir() { if (is_null($this->slug) || trim($this->slug) == '') { $this->slug = sanitize_slug($this->nome); } $this->slug = $this->validarSlug(null, $this->slug); $data = serialize($this); $query = "\n INSERT INTO personagem (\n data_inclusao,\n ultima_alteracao,\n id_jogador,\n id_campanha,\n slug,\n nome,\n data,\n cod_situacao\n ) VALUES (\n NOW(),\n NOW(),\n '" . do_escape(ID_JOGADOR) . "',\n '" . do_escape($this->id_campanha) . "',\n '" . do_escape($this->slug) . "',\n '" . do_escape($this->nome) . "',\n '" . do_escape($data) . "',\n '" . do_escape($this->cod_situacao) . "'\n )\n "; $this->id_personagem = do_insert($query); $this->gravarImagem(); Feed::novoPersonagem($this->id_personagem); }
public function inserir($usuario) { $usuario = $this->validar($usuario); $query = "\n INSERT INTO usuario (\n id_escola,\n data_inclusao,\n ultima_alteracao,\n email,\n nome,\n senha,\n cod_tipo,\n cod_situacao\n ) VALUES (\n '" . do_escape(ID_ESCOLA) . "',\n NOW(),\n NOW(),\n '" . do_escape($usuario->email) . "',\n '" . do_escape($usuario->nome) . "',\n '" . do_escape($usuario->senha) . "',\n '" . do_escape($usuario->cod_tipo) . "',\n 1\n )\n "; return do_insert($query); }
public function relacionar($id_responsavel, $id_aluno) { $query = "\n SELECT COUNT(*) AS 'quantidade'\n FROM aluno_responsavel\n WHERE id_aluno = '" . do_escape($id_aluno) . "'\n AND id_responsavel = '" . do_escape($id_responsavel) . "'\n "; $quantidade = get_value($query, 'quantidade'); if ($quantidade <= 0) { $query = "\n INSERT INTO aluno_responsavel (\n id_aluno,\n id_responsavel,\n principal\n ) VALUES (\n '" . do_escape($id_aluno) . "',\n '" . do_escape($id_responsavel) . "',\n 0\n )\n "; do_insert($query); } }
public static function escreverlog($texto, $id_personagem = null, $cod_tipo = LOG_NORMAL) { if (array_key_exists('s', $_GET)) { $id_sessao = Sessao::idSessao(); } $query = "\n INSERT INTO noticia (\n id_campanha,\n id_personagem,\n cod_tipo,\n id_sessao,\n data_inclusao,\n texto\n ) VALUES (\n " . do_full_escape(static::$id_campanha) . ",\n " . do_full_escape($id_personagem) . ",\n '" . do_escape($cod_tipo) . "',\n '" . do_escape($id_sessao) . "',\n NOW(),\n '" . do_escape($texto) . "'\n )\n "; do_insert($query); }
function execute($vars, $auto_vars) { $vars[$this->name . '-submitted'] = $_REQUEST['_' . $this->name . '_submit']; $inserts = array(); foreach ($this->children as $child) { //print "processing " . $this->component_description() . "<br>"; if (is_a($child, 'Auto')) { $inserts[$child->name] = $child->value($vars, $auto_vars); } else { if (is_a($child, 'File')) { if (!$child->execute($vars, $auto_vars)) { // required parameter is missing if ($child->required) { return false; } } else { $inserts['-file'] = array('filename' => $child->filename, 'size' => $child->size, 'filetype' => $child->filetype, 'localpath' => $child->localpath); } } else { if (is_a($child, 'Radio')) { $value = $child->value($vars); if ($value !== NULL) { $inserts[$child->name] = $value; } // nb: we don't enforce required radio button here, only in input_check() } else { if (is_a($child, 'InputComponent')) { $value = $child->value($vars); if (!$value and $child->required) { // a required parameter is missing: back out return true; } if ($value != NULL) { $inserts[$child->name] = $value; } } } } } //print "processed " . $this->component_description() . "<br>"; } if (!($pkey = do_insert($inserts, $this->name, $this->type, $vars))) { return false; } $vars[$this->type . "-ID"] = $pkey; $this->add_vars($vars, $auto_vars); $rval = true; foreach ($this->children as $child) { if (is_a($child, 'Scope')) { $rval = $rval and $child->execute($vars, $auto_vars); } else { if (is_a($child, 'InputComponent')) { // remove values from the $_REQUEST once they've been successfully inserted $param_name = $this->name . '_' . $child->name; unset($_REQUEST[$param_name]); } } } if ($rval) { return $pkey; } else { return false; } }
private function adicionarPericia($id_construcao, $slug, $quantidade) { $query = "\n SELECT COUNT(*) AS 'total'\n FROM construcao_pericia\n WHERE id_construcao = '" . do_escape($id_construcao) . "'\n AND slug = '" . do_escape($slug) . "'\n "; $total = get_value($query, 'total'); if ($total > 0) { $query = "\n UPDATE construcao_pericia SET \n quantidade = quantidade + '" . do_escape($quantidade) . "'\n WHERE id_construcao = '" . do_escape($id_construcao) . "'\n AND slug = '" . do_escape($slug) . "'\n "; do_update($query); } else { $query = "\n INSERT INTO construcao_pericia (\n id_construcao,\n slug,\n quantidade\n ) VALUES (\n '" . do_escape($id_construcao) . "',\n '" . do_escape($slug) . "',\n '" . do_escape($quantidade) . "'\n )\n "; do_insert($query); } }
public function inserir($curso) { $curso = $this->validar($curso); $query = "\n INSERT INTO curso (\n id_escola,\n data_inclusao,\n ultima_alteracao,\n nome,\n cod_situacao\n ) VALUES (\n '" . do_escape(ID_ESCOLA) . "',\n NOW(),\n NOW(),\n '" . do_escape($curso->nome) . "',\n 1\n )\n "; return do_insert($query); }
public function inserir($movimento) { $movimento = $this->validar($movimento); if (!($movimento->id_pessoa > 0)) { $query = "\n SELECT id_responsavel\n FROM aluno_responsavel\n WHERE id_aluno = '" . do_escape($movimento->id_aluno) . "'\n "; $movimento->id_pessoa = get_value($query, 'id_responsavel'); } if (!($movimento->id_aluno > 0)) { $movimento->id_aluno = null; } $query = " \n INSERT INTO movimento (\n id_escola,\n id_pessoa,\n id_aluno,\n cod_tipo,\n tipo,\n data_inclusao,\n ultima_alteracao,\n data_vencimento,\n data_pagamento,\n credito,\n debito,\n cod_situacao,\n observacao\n ) VALUES (\n '" . do_escape(ID_ESCOLA) . "',\n '" . do_escape($movimento->id_pessoa) . "',\n " . do_escape_full($movimento->id_aluno) . ",\n '" . do_escape($movimento->cod_tipo) . "',\n '" . do_escape($movimento->tipo) . "',\n NOW(),\n NOW(),\n '" . do_escape(date('Y-m-d 00:00:00', strtotime($movimento->data_vencimento))) . "',\n NULL, \n '" . do_escape(number_format($movimento->credito, 2, '.', '')) . "',\n '" . do_escape(number_format($movimento->debito, 2, '.', '')) . "',\n '" . do_escape($movimento->cod_situacao) . "',\n '" . do_escape($movimento->observacao) . "'\n )\n "; //var_dump($query); //exit(); return do_insert($query); }
public function inserir() { $query = "INSERT INTO campanha (\n data_inclusao,\n ultima_alteracao,\n id_jogador,\n nome,\n descricao,\n limite_jogador,\n cod_situacao,\n aberta\n ) VALUES (\n NOW(),\n NOW(),\n '" . do_escape(ID_JOGADOR) . "',\n '" . do_escape($this->nome) . "',\n '" . do_escape($this->descricao) . "',\n '" . do_escape($this->limite_jogador) . "',\n '" . do_escape($this->cod_situacao) . "',\n '" . do_escape($this->aberta) . "'\n )"; $this->id_campanha = do_insert($query); }
do_update($faq, array('id' => $faq_ids[$i]), 'vcn_faq'); } else { //new faq to be added $new_faqs[] = $faq; } } } do_update(array('has_faq' => '1'), array('id' => _POST('group')), 'vcn_data'); //turn on faq for this question if (count($new_faqs) && _POST('modify') && is_numeric(_POST('modify'))) { //new faq to be added when update do_insert($new_faqs, 'vcn_faq'); } //add faq if (!_POST('modify') || !is_numeric(_POST('modify'))) { do_insert($faqs, 'vcn_faq'); push_messages('Thêm faq thành công.'); } else { push_messages('Cập nhật faq thành công.'); } //delete answers if (_POST('deletes')) { do_delete(explode(',', trim(_POST('deletes'), ',')), 'vcn_faq', 'id'); //delete old answers } } if (_GET('del')) { //del faq item delete_faq(_GET('del')); } if (_GET('edit')) {