ugrás a tartalomhoz

Mysqli tranzakció kezeléshez keresek példát

aspirany · 2008. Júl. 13. (V), 19.33
Sziasztok!

(Mysqli) tranzakció kezelés lenne a kérdésem, igazábol nem találtam sehol jó példát a neten.
Ha valaki tudna példát írni azt megköszönném.
 
1

úgy mint máshol :)

virág · 2008. Júl. 14. (H), 10.07
Szia,

ugyanúgy kell használni mint máshol, hiszen az alapelv számít és nem az adott környezet. Példát találsz a PHP súgójában:

http://hu.php.net/manual/en/mysqli.autocommit.php
http://hu.php.net/manual/en/mysqli.commit.php
http://hu.php.net/manual/en/mysqli.rollback.php

itt pedig egy részletes cikk:

http://articles.techrepublic.com.com/5100-10878_11-6085922.html

remélem segít!
2

Köszönöm

aspirany · 2008. Júl. 14. (H), 12.25
Az utolsó link elég használható.

A kérdésem még az lenne a cikkbebn szerepló példa általában elégséges?
vagy valami kimaradt belőle amit érdemes figyelni.
3

jó-e?

aspirany · 2008. Júl. 14. (H), 12.45
A leírások alapján ez hoztam létre:


session_start();
require_once('connect.php');
$result = mysqli_query($link,"CALL sp_login_out('$_SESSION[Username]','LOGOUT')");
if($resilt !== TRUE)
{
mysqli_rollback($link);
}
else
{
mysqli_commit($link);
mysqli_close($link);
}
header('Location:belep.php');


vagy az else ág elhagyható és helyette élég


mysqli_commit($link);
mysqli_close($link);

header('Location:belep.php');

4

jó az elképzelés

virág · 2008. Júl. 14. (H), 13.10
Igen, jó az elképzelés, de erre jobb ha egy keretrendszert (pl. Propel, Doctrine stb.) használsz, de ha nem akarsz a projektedbe egy teljesen idegen réteget "belevinni", akkor én valami hasonlót használnék, mint amit itt találsz:

http://hu.php.net/manual/en/mysqli.autocommit.php#73816

ez néhány függvénnyel szépen megvalósítja a lényeget.
5

miért tranzakció?

Hodicska Gergely · 2008. Júl. 15. (K), 22.32
Miért jó jelen esetben a tranzakció?


Üdv,
Felhő
6

jogos

aspirany · 2008. Júl. 16. (Sze), 08.27
Teljesen jogos a kérdéset.A fenti példában semmi értelme, csak magára az elv érdekelt