db_insert_toc.php 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. </head>
  5. <body>
  6. <h2>合并标题文件</h2>
  7. <p><a href="index.php">Home</a></p>
  8. <?php
  9. include "./_pdo.php";
  10. if(isset($_GET["from"])==false){
  11. ?>
  12. <form action="db_insert_toc.php" method="get">
  13. From: <input type="text" name="from"><br>
  14. To: <input type="text" name="to"><br>
  15. <input type="submit">
  16. </form>
  17. <?php
  18. return;
  19. }
  20. $from=$_GET["from"];
  21. $to=$_GET["to"];
  22. $filelist=array();
  23. $fileNums=0;
  24. $log="";
  25. echo "<h2>$from</h2>";
  26. if(($handle=fopen("filelist.csv",'r'))!==FALSE){
  27. while(($filelist[$fileNums]=fgetcsv($handle,0,','))!==FALSE){
  28. $fileNums++;
  29. }
  30. }
  31. if($to==0 || $to>=$fileNums) $to=$fileNums-1;
  32. $FileName=$filelist[$from][1].".htm";
  33. $fileId=$filelist[$from][0];
  34. $fileId=$filelist[$from][0];
  35. $dirLog=_DIR_LOG_."/";
  36. $dirDb="db/";
  37. $inputFileName=$FileName;
  38. $outputFileNameHead=$filelist[$from][1];
  39. $bookId=$filelist[$from][2];
  40. $vriParNum=0;
  41. $wordOrder=1;
  42. $dirXmlBase="xml/";
  43. $dirXml=$outputFileNameHead."/";
  44. $xmlfile = $inputFileName;
  45. echo "doing:".$xmlfile."<br>";
  46. $log=$log."$from,$FileName,open\r\n";
  47. $arrInserString=array();
  48. $db_file = $dirDb.'toc.db3';
  49. $row=0;
  50. if(($fp_toc=fopen($dirDb."toc.csv", "a"))===FALSE){
  51. $error= "can not open csv file. filename=".$dirXmlBase.$dirXml.$outputFileNameHead.".csv";
  52. echo $error;
  53. $log=$log."$from,$FileName,error, $error \r\n";
  54. }
  55. // 打开文件并读取数据
  56. if(($fp=fopen($dirXmlBase.$dirXml.$outputFileNameHead."_toc.csv", "r"))!==FALSE){
  57. while(($data=fgetcsv($fp,0,','))!==FALSE){
  58. if($row>0){
  59. fputcsv($fp_toc,$data);
  60. }
  61. $row++;
  62. }
  63. fclose($fp);
  64. fclose($fp_toc);
  65. echo "Toc导出到:".$dirDb."toc.csv<br>";
  66. echo "toc load:".$dirXmlBase.$dirXml.$outputFileNameHead."_toc.csv<br>";
  67. }
  68. else{
  69. $error= "can not open csv file. filename=".$dirXmlBase.$dirXml.$outputFileNameHead."_toc.csv";
  70. echo $error;
  71. $log=$log."$from,$FileName,error, $error \r\n";
  72. }
  73. /* 开始一个事务,关闭自动提交 */
  74. /*
  75. $PDO->beginTransaction();
  76. $query="INSERT INTO toc ('id','book','par_num','level','class','language','title','author','editor','modify','edition','sub_ver') VALUES (NULL,?,?,?,?,?,?,?,?,?,?,?)";
  77. $stmt = $PDO->prepare($query);
  78. foreach($arrInserString as $oneParam){
  79. $stmt->execute($oneParam);
  80. }
  81. */
  82. /* 提交更改 */
  83. /*
  84. $PDO->commit();
  85. if (!$stmt || ($stmt && $stmt->errorCode() != 0)) {
  86. $error = PDO_ErrorInfo();
  87. echo "error - $error[2] <br>";
  88. $log=$log."$from, $FileName, error, $error[2] \r\n";
  89. }
  90. else{
  91. $count=count($arrInserString);
  92. echo "updata $count recorders.";
  93. }
  94. */
  95. $myLogFile = fopen($dirLog."insert_db_toc.log", "a");
  96. fwrite($myLogFile, $log);
  97. fclose($myLogFile);
  98. ?>
  99. <?php
  100. if($from==$to){
  101. echo "<h2>齐活!功德无量!all done!</h2>";
  102. }
  103. else{
  104. echo "<script>";
  105. echo "window.location.assign(\"db_insert_toc.php?from=".($from+1)."&to=".$to."\")";
  106. echo "</script>";
  107. echo "正在载入:".($from+1)."——".$filelist[$from+1][0];
  108. }
  109. ?>
  110. </body>
  111. </html>