
como Realizar mas de 1 Insert en mysql con PHP?
Publicado por Nata (20 intervenciones) el 17/09/2015 01:37:03
Necesito realizar mas de un insert con php y si alguno de los insert da error no guardar los cambios.
Hasta ahora he realizado esto con BEGIN, ROLLBACK , COMMIT pero me dice guardado con suceso pero en realidad no a insertado nada. Desde ya Gracias.
Sin el BEGIN, ROLLBACK y COMMIT si ingresa los datos a la base de datos.
Hasta ahora he realizado esto con BEGIN, ROLLBACK , COMMIT pero me dice guardado con suceso pero en realidad no a insertado nada. Desde ya Gracias.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
$error = 0; //variable para detectar error
//mysqli_query($con,"BEGIN"); // Inicio de Transacción
while ($resultBuscaParticipante = mysqli_fetch_array($queryBuscaParticipante)) {
$Participante_IdParticipante = $resultBuscaParticipante['Participante_idParticipante'];
$sql = utf8_decode("insert into frequencia (Oficina_IdOficina, Participante_IdParticipante,dataFrequencia) values ('$Oficina_idOficina','$Participante_IdParticipante','$dataFrequencia');");
$result = mysqli_query($con, $sql);
if(!$result){
$error = true;
}
}
if($error) {
//mysqli_query($CON,"ROLLBACK"); //se houver algum erro em algum dos insert, volta atrás sem salvar nenhum
$notificacion = ' ao cadastrar!';
setMensaje('gravar', $notificacion, 'error');
} else {
//mysqli_query($CON,"COMMIT"); //se nao houver nenhum erro salva as modificacoes
$notificacion = ' Sucesso ao cadastrar!';
setMensaje('gravar', $notificacion, 'sucesso');
}
header("Location: ../index.php?id=listarFrequencias");
}
Sin el BEGIN, ROLLBACK y COMMIT si ingresa los datos a la base de datos.
Valora esta pregunta


0