Exemplo básico de INSERT com substituição de valores no arrays
- December 27th, 2011
- By admin
- Write comment
Esse é um exemplo clássico e básico de como substituir um valor de uma chave no array, existem outras formas de fazer isso, mas desse jeito é simples, funcional e de certa forma torna as coisas genérico, pois é possível tratar qualquer entrada de dados dessa maneira, veja a function br2sql_slash(), ela converte data do formato brasileiro para o formato do banco mysql. Eu estou acostumado a separar a parte de operações do banco em Model. Para verifications, error handling and sanitization geralmente faço isso separadamente. Você pode criar uma classe com todos os métodos de verificações, ou simplesmente criar um script com funções de verificação (mais comum), isso realmente não importa como será feito, o importante é fazer todo o procedimento.
if ($_POST)
{
/* commom vars */
$table = "atendimento";
foreach ($_POST as $key => $val)
{
/* Array replace values */
if ($key == "abertura")
{
$abertura = br2sql_slash( $val );
$_POST['abertura'] = $abertura;
}
if ($key == "inicio")
{
$inicio = br2sql_slash( $val );
$_POST['inicio'] = $inicio;
}
if ($key == "termino")
{
$termino = br2sql_slash( $val );
$_POST['termino'] = $termino;
}
}
/* exemplo de insert */
$inserts = array();
$inserts = $_POST;
print_r($inserts);
mysql_insert($table, $inserts);
/* exemplo de insert */
$last_insert_id = get_maxid( $table );
}
/* function br2sql_slash() */
function br2sql_slash( $date )
{
$aux = explode( " ", $date );
$aux_date = explode ( "/", $aux[0] );
$aux_date = "$aux_date[2]-$aux_date[1]-$aux_date[0]";
return $aux_date = "$aux_date $aux[1]";
}
/* insert mysql function */
function mysql_insert($table, $inserts)
{
$values = array_map('mysql_real_escape_string', array_values($inserts));
$keys = array_keys($inserts);
return mysql_query('INSERT INTO `'.$table.'` (`'.implode('`,`', $keys).'`) VALUES (\''.implode('\',\'', $values).'\')') or die("Error: mysql_insert " . mysql_error());
}