quarta-feira, 7 de novembro de 2012

Update com Prepared Statement - PHP


<pre name="code" class="php">
<?php

/*
    Utilizando 

//Informações da conexão MySQL
$host = 'localhost';
$usuario = 'root';
$senha = '123';
$banco = 'banco';

//Instanciamos a classe mysqli
$mysqli = new mysqli($host,$usuario,$senha,$banco);

//Checamos se ocorre algum erro durante a conexão
if (mysqli_connect_errno()) {
  printf("Conexão falhou: $s\n", mysqli_connect_error());
  exit();
}

//Variaveis recebida por post
$var = $_POST['var']; //No exemplo, uma string
$var2 = $_POST['var2']; //Inteiro

//Cria objeto de statement
$stmt = $mysqli->stmt_init();

//Cria um statement preparado
If ($stmt->prepare("UPDATE tabela SET coluna = ? WHERE coluna = ?"))
{
  /*
      Define os ? com as respectivas variaveis
      s = string / i = int
  */
}
$stmt->bind_param("si", $var, $var2); //Como se fosse: UPDATE tabela SET coluna = '$var' WHERE coluna = '$var2'

//Executa a consulta
if ($stmt->execute())
{
  echo "Dado alterado com sucesso!";
}
else
{
  echo "Erro";
}

//Fecha o objeto de statement
$stmt->close();
}

//Fecha a conexão mysqli
$mysqli->close();

?>