/[LeafOK_CVS]/fenglin/bbs/ex_dir_service.php
ViewVC logotype

Diff of /fenglin/bbs/ex_dir_service.php

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.1 by sysadm, Tue Apr 8 09:29:17 2025 UTC Revision 1.4 by sysadm, Wed Apr 23 05:13:56 2025 UTC
# Line 1  Line 1 
1  <?  <?php
2          require_once "../lib/db_open.inc.php";          require_once "../lib/db_open.inc.php";
3          require_once "../lib/str_process.inc.php";          require_once "../lib/str_process.inc.php";
4          require_once "./check_sub.inc.php";          require_once "./check_sub.inc.php";
# Line 95  Line 95 
95    
96          if ($current_dir != "") // Not root          if ($current_dir != "") // Not root
97          {          {
98                  $sql = "SELECT FID, name FROM ex_dir WHERE dir = '$current_dir' AND enable";                  $sql = "SELECT FID, name FROM ex_dir WHERE dir = '$current_dir' AND enable FOR SHARE";
99    
100                  $rs = mysqli_query($db_conn, $sql);                  $rs = mysqli_query($db_conn, $sql);
101                  if ($rs == false)                  if ($rs == false)
# Line 133  Line 133 
133          // Operation of ex_dir          // Operation of ex_dir
134          switch($dir_op)          switch($dir_op)
135          {          {
136                    case 0: // List
137                            break;
138                  case 1: // Create                  case 1: // Create
139                          if ($dir == "" || $dir_name == "")                          if ($dir == "" || $dir_name == "")
140                          {                          {
# Line 146  Line 148 
148                                  exit(json_encode($result_set));                                  exit(json_encode($result_set));
149                          }                          }
150    
151                          $sql = "SELECT FID FROM ex_dir WHERE SID = $sid AND dir = '$current_dir$dir/'";                          $sql = "SELECT FID FROM ex_dir WHERE SID = $sid AND dir = '$current_dir$dir/' FOR UPDATE";
152    
153                          $rs = mysqli_query($db_conn, $sql);                          $rs = mysqli_query($db_conn, $sql);
154                          if ($rs == false)                          if ($rs == false)
# Line 229  Line 231 
231                                  $parent_dir = substr($current_dir, 0, strrpos("/" . $current_dir, "/", -2));                                  $parent_dir = substr($current_dir, 0, strrpos("/" . $current_dir, "/", -2));
232                                  $current_dir_len = strlen($current_dir);                                  $current_dir_len = strlen($current_dir);
233    
234                                  $sql = "SELECT FID, dir FROM ex_dir WHERE SID = $sid AND dir LIKE '$current_dir%'";                                  $sql = "SELECT FID, dir FROM ex_dir WHERE SID = $sid AND dir LIKE '$current_dir%' FOR UPDATE";
235    
236                                  $rs = mysqli_query($db_conn, $sql);                                  $rs = mysqli_query($db_conn, $sql);
237                                  if ($rs == false)                                  if ($rs == false)
# Line 301  Line 303 
303                                  exit(json_encode($result_set));                                  exit(json_encode($result_set));
304                          }                          }
305    
306                          $sql = "SELECT FID FROM ex_dir WHERE SID = $sid AND dir LIKE '$current_dir%'";                          $sql = "SELECT FID FROM ex_dir WHERE SID = $sid AND dir LIKE '$current_dir%' FOR UPDATE";
307    
308                          $rs = mysqli_query($db_conn, $sql);                          $rs = mysqli_query($db_conn, $sql);
309                          if ($rs == false)                          if ($rs == false)
# Line 382  Line 384 
384          if ($rs == false)          if ($rs == false)
385          {          {
386                  $result_set["return"]["code"] = -2;                  $result_set["return"]["code"] = -2;
                 $result_set["return"]["message"] = "Mysqli error: " . mysqli_error($db_conn);  
   
                 mysqli_close($db_conn);  
                 exit(json_encode($result_set));  
         }  
   
         // No longer require explicit transaction  
         $rs = mysqli_query($db_conn, "SET autocommit=1");  
         if ($rs == false)  
         {  
                 $result_set["return"]["code"] = -2;  
387                  $result_set["return"]["message"] = "Mysqli error: " . mysqli_error($db_conn);                  $result_set["return"]["message"] = "Mysqli error: " . mysqli_error($db_conn);
388    
389                  mysqli_close($db_conn);                  mysqli_close($db_conn);


Legend:
Removed lines/characters  
Changed lines/characters
  Added lines/characters

webmaster@leafok.com
ViewVC Help
Powered by ViewVC 1.3.0-beta1