ciao a tutti sto cercando di usare il rollback... ma non funziona come vorrei.
Praticamente quello che vorrei è questo:
nel codice quando una query va in errore, mi salvo l'errore in un array.
alla fine.. se nell'array ho degli errori faccio il rollback.. e fin qui tutto ok.
e successivamente al rollback vorrei ciclare l'array e fare degli insert su una tabella per salvarmi gli errori.
ecco... non mi fa gli insert di salvataggio degli errori.
perchè fa rollback pure su quella..
se infatti aggiungo
$mysqli->autocommit(TRUE);
prima della funzione logerror.... l'inserimento dell'errore viene fatto.
Ringrazio in anticipo per l'aiutocodice:// disable autocommit $mysqli->autocommit(FALSE); ............. una serie di query varie.... if(count($arrayToJs) > 0) { //se ci sono errori allora Rollback $mysqli->rollback(); //ciclo l'array logerror per inserire gli errori su db foreach ($arraylogerror as $valueerror) { foreach ($valueerror as $key => $value) { //logerror($idutente, $nome, $pagina, $query) switch($key) { case 0: $idutente = $value; break; case 1: $nome = $value; break; case 2: $pagina = $value; break; case 3: $error = $value; break; } //echo $key." => ".$value; } //echo "<hr>"; $mysqli->logerror($idutente, $nome, $pagina, $error); } } else { //altrimenti Commit $mysqli->commit(); }

Rispondi quotando