diff options
| author | Cassio de Campos <cassiopc@gmail.com> | 2017-10-24 14:58:09 +0000 |
|---|---|---|
| committer | Cassio de Campos <cassiopc@gmail.com> | 2017-10-24 14:58:09 +0000 |
| commit | aaee4537fc9201e9d6a242583d82fd1bea97928c (patch) | |
| tree | ff57c7f621382492910292b490d9c67e6f99e739 /src/fclar.php | |
| parent | 006561454093d44a789463d531cfbc640c519867 (diff) | |
| parent | 2c862aa5c6ac4afe4005582fc836b13775a99eac (diff) | |
| download | boca-aaee4537fc9201e9d6a242583d82fd1bea97928c.tar.gz boca-aaee4537fc9201e9d6a242583d82fd1bea97928c.zip | |
Merge branch 'devel'
Diffstat (limited to 'src/fclar.php')
| -rw-r--r-- | src/fclar.php | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/src/fclar.php b/src/fclar.php index fd99c53..72364e8 100644 --- a/src/fclar.php +++ b/src/fclar.php @@ -300,7 +300,7 @@ function DBNewClar($param,$c=null) { DBExec($c, "update sitetable set sitenextclar=$clarnumber" . " where sitenumber=$site and contestnumber=$contest and sitenextclar<$clarnumber", "DBNewClar(update site)"); - $clarnumber = myunique(); + $clarnumber = myunique($clarnumber); $clarinc = $clarnumber; } else { $sql = "select * from clartable as t where t.contestnumber=$contest and " . @@ -338,11 +338,14 @@ function DBNewClar($param,$c=null) { $ret=1; if($insert) { if($clarinc >= $clarnumber) { - while(!DBExecNonStop($c, "INSERT INTO clartable (contestnumber, clarsitenumber, clarnumber, usernumber, clardate, " . - "clardatediff, clardatediffans, clarproblem, clardata, claranswer, clarjudge, clarjudgesite, clarstatus, updatetime) VALUES " . - "($contest, $site, $clarnumber, $user, $clardate, $clardatediff, $clardatediffans, $problem, '$question', " . - "'$claranswer', $clarjudge, $clarjudgesite, '$clarstatus', $updatetime)", - "DBNewClar(insert clar)")) { + while(true) { + DBExec($c,"SAVEPOINT sp" . $clarnumber,"DBNewClar(insert clar sp)"); + if(DBExecNonStop($c, "INSERT INTO clartable (contestnumber, clarsitenumber, clarnumber, usernumber, clardate, " . + "clardatediff, clardatediffans, clarproblem, clardata, claranswer, clarjudge, clarjudgesite, clarstatus, updatetime) VALUES " . + "($contest, $site, $clarnumber, $user, $clardate, $clardatediff, $clardatediffans, $problem, '$question', " . + "'$claranswer', $clarjudge, $clarjudgesite, '$clarstatus', $updatetime)", + "DBNewClar(insert clar)")) break; + DBExec($c,"ROLLBACK TO SAVEPOINT sp" . $clarnumber,"DBNewClar(insert clar sp rollback)"); $clarnumber++; if($clarnumber > $clarinc + 3) break; } |