Mercurial > hg > extraction-interface
comparison interface/old php/exportTable.php @ 0:b12c99b7c3f0
commit for previous development
| author | Zoe Hong <zhong@mpiwg-berlin.mpg.de> |
|---|---|
| date | Mon, 19 Jan 2015 17:13:49 +0100 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| -1:000000000000 | 0:b12c99b7c3f0 |
|---|---|
| 1 <?php | |
| 2 header("Content-Type: text/html;charset=utf-8"); | |
| 3 | |
| 4 /** | |
| 5 * "Lib_mb_utf8.php" is a set of common functions used to convert encode of text | |
| 6 * "config.php" containing a system name variable. Please make it the same as the system's folder name. | |
| 7 */ | |
| 8 include_once('Lib_mb_utf8.php'); | |
| 9 include_once('config.php'); | |
| 10 if (isset($_POST['content'])) { | |
| 11 $content = $_POST['content']; | |
| 12 } | |
| 13 if (isset($_POST['sectionid'])) { | |
| 14 $sectionid = $_POST['sectionid']; | |
| 15 } | |
| 16 | |
| 17 | |
| 18 set_time_limit(0); | |
| 19 ini_set('memory_limit', '-1'); | |
| 20 | |
| 21 $link_mysql = mysql_connect($mysql_server, $mysql_user, $mysql_password); | |
| 22 mysql_query("SET NAMES utf8"); | |
| 23 | |
| 24 if (!$link_mysql) { | |
| 25 die('Could not connect: ' . mysql_error()); | |
| 26 } | |
| 27 | |
| 28 $db_selected = mysql_select_db('Gazetteer', $link_mysql); | |
| 29 if (!$db_selected) { | |
| 30 die ('Can\'t use foo : ' . mysql_error()); | |
| 31 } | |
| 32 | |
| 33 if (!function_exists("GetSQLValueString")) { | |
| 34 function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") | |
| 35 { | |
| 36 $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue; | |
| 37 | |
| 38 $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue); | |
| 39 | |
| 40 switch ($theType) { | |
| 41 case "text": | |
| 42 $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; | |
| 43 break; | |
| 44 case "long": | |
| 45 case "int": | |
| 46 $theValue = ($theValue != "") ? intval($theValue) : "NULL"; | |
| 47 break; | |
| 48 case "double": | |
| 49 $theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL"; | |
| 50 break; | |
| 51 case "date": | |
| 52 $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; | |
| 53 break; | |
| 54 case "defined": | |
| 55 $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue; | |
| 56 break; | |
| 57 } | |
| 58 return $theValue; | |
| 59 } | |
| 60 } | |
| 61 | |
| 62 $query = sprintf("SELECT * FROM `sections` WHERE id=\"%s\"", $sectionid); | |
| 63 $result = mysql_query($query); | |
| 64 while ($row = mysql_fetch_assoc($result)) { | |
| 65 $sectionName = $row['name']; | |
| 66 $bookId = $row['books_id']; | |
| 67 } | |
| 68 | |
| 69 $query = sprintf("SELECT * FROM `books` WHERE id=\"%s\"", $bookId); | |
| 70 $result = mysql_query($query); | |
| 71 while ($row = mysql_fetch_assoc($result)) { | |
| 72 $bookName = $row['name']; | |
| 73 } | |
| 74 | |
| 75 $outputTableArray = array(); | |
| 76 | |
| 77 $taglistArray=""; | |
| 78 $query = sprintf("SELECT * FROM `taglist` ORDER BY `tag` ASC"); | |
| 79 $result = mysql_query($query); | |
| 80 while ($row = mysql_fetch_assoc($result)) { | |
| 81 $taglistArray[] = array( $row['id'], $row['name'], $row['tag'], $row['color'] ); | |
| 82 } | |
| 83 | |
| 84 | |
| 85 $outputTableArray[0]=array(); | |
| 86 $outputTableArray[0][0]=array(); | |
| 87 $outputTableArray[0][1]=array(); | |
| 88 foreach ( $taglistArray as $value ) { | |
| 89 $outputTableArray[0][0][$value[2]] = $value[1]; | |
| 90 $outputTableArray[0][1][$value[2]] = $value[1]."(Title)"; | |
| 91 } | |
| 92 $outputTableArray[0]["other"] = "其他"; | |
| 93 $outputTableArray[0]["page"] = "頁數"; | |
| 94 $outputTableArray[0]["full"] = "全文"; | |
| 95 | |
| 96 foreach ( $taglistArray as $tagValue ) { | |
| 97 $content = preg_replace("/<\/".$tagValue[2].">○*<".$tagValue[2].">/u", "", $content); | |
| 98 $content = preg_replace("/<".$tagValue[2].">[ ]*<\/".$tagValue[2].">/u", "", $content); | |
| 99 } | |
| 100 | |
| 101 $contentLineArray = explode( "<br>", $content ); | |
| 102 | |
| 103 $count=0; | |
| 104 $pageNow=NULL; | |
| 105 foreach ( $contentLineArray as $value ) { | |
| 106 $count++; | |
| 107 $recordString = $value; | |
| 108 $otherString = $recordString; | |
| 109 //echo $recordString."<br>\n"; | |
| 110 if ( preg_match("/【<a(.*?)>(.*?)<\/a>】/u", $recordString, $matches) ) { | |
| 111 $pageNow = $matches[2]; | |
| 112 continue; | |
| 113 } | |
| 114 foreach ( $taglistArray as $tagValue ) { | |
| 115 if ( preg_match_all("/<".$tagValue[2].">(.*?)<\/".$tagValue[2].">/u", $recordString, $matches, PREG_SET_ORDER) ) { | |
| 116 foreach ( $matches as $matchesValue ) { | |
| 117 $matchesValue[1] = preg_replace("/○/u", "", $matchesValue[1]); | |
| 118 if ( preg_match_all("/〈(.*?)〉/u", $matchesValue[1], $matches2, PREG_SET_ORDER) ) { | |
| 119 foreach ( $matches2 as $matches2Value ) { | |
| 120 if ( isset($outputTableArray[$count][0][$tagValue[2]]) ) { | |
| 121 $outputTableArray[$count][0][$tagValue[2]] .= ";".$matches2Value[1]; | |
| 122 } else { | |
| 123 $outputTableArray[$count][0][$tagValue[2]] = $matches2Value[1]; | |
| 124 } | |
| 125 } | |
| 126 } else { | |
| 127 if ( isset($outputTableArray[$count][0][$tagValue[2]]) ) { | |
| 128 $outputTableArray[$count][0][$tagValue[2]] .= ";".$matchesValue[1]; | |
| 129 } else { | |
| 130 $outputTableArray[$count][0][$tagValue[2]] = $matchesValue[1]; | |
| 131 } | |
| 132 } | |
| 133 } | |
| 134 $otherString = preg_replace("/<".$tagValue[2].">(.*?)<\/".$tagValue[2].">/u", " ", $otherString); | |
| 135 } | |
| 136 } | |
| 137 $otherString = preg_replace("/○/u", "", $otherString); | |
| 138 $outputTableArray[$count]["other"] = $otherString; | |
| 139 $outputTableArray[$count]["page"] = $pageNow; | |
| 140 $value = preg_replace("/>/u", ">", $value); | |
| 141 $value = preg_replace("/</u", "<", $value); | |
| 142 $outputTableArray[$count]["full"] = $value; | |
| 143 } | |
| 144 | |
| 145 foreach ( $outputTableArray as $arrayIndex => $arrayValue ) { | |
| 146 if ( !isset($arrayValue[0]["person"]) ) { | |
| 147 unset($outputTableArray[$arrayIndex]); | |
| 148 } | |
| 149 } | |
| 150 ?> | |
| 151 | |
| 152 <html> | |
| 153 <head> | |
| 154 <title></title> | |
| 155 <script src="../jquery-1.10.2.min.js"></script> | |
| 156 | |
| 157 </head> | |
| 158 | |
| 159 <body> | |
| 160 <table width="100%" border="1" id="tableMain"> | |
| 161 | |
| 162 <?php | |
| 163 $count=1; | |
| 164 foreach ( $outputTableArray as $trIndex =>$trValue ) { | |
| 165 echo "<tr>"; | |
| 166 if ( $trIndex==0 ) { | |
| 167 echo "<td>#</td>"; | |
| 168 echo "<td>Book ID</td>"; | |
| 169 echo "<td>Section ID</td>"; | |
| 170 echo "<td>方志</td>"; | |
| 171 echo "<td>部</td>"; | |
| 172 } else { | |
| 173 echo "<td>".$count++."</td>"; | |
| 174 echo "<td>".$bookId."</td>"; | |
| 175 echo "<td>".$sectionid."</td>"; | |
| 176 echo "<td>".$bookName."</td>"; | |
| 177 echo "<td>".$sectionName."</td>"; | |
| 178 } | |
| 179 if ( isset( $trValue["page"] ) ) { | |
| 180 echo "<td>".$trValue["page"]."</td>"; | |
| 181 } else { | |
| 182 echo "<td> </td>"; | |
| 183 } | |
| 184 /* | |
| 185 foreach ( $outputTableArray[0][1] as $index => $value ) { | |
| 186 if ( isset( $trValue[1][$index] ) ) { | |
| 187 echo "<td>".$trValue[1][$index]."</td>"; | |
| 188 } else { | |
| 189 echo "<td> </td>"; | |
| 190 } | |
| 191 } | |
| 192 */ | |
| 193 foreach ( $outputTableArray[0][0] as $index => $value ) { | |
| 194 if ( $index == "time" ) { | |
| 195 if ( isset( $trValue[0][$index] ) ) { | |
| 196 echo "<td>".$trValue[0][$index]."</td>"; | |
| 197 echo "<td>".$trValue[0][$index]."</td>"; | |
| 198 } else { | |
| 199 echo "<td> </td>"; | |
| 200 echo "<td> </td>"; | |
| 201 } | |
| 202 } else { | |
| 203 if ( isset( $trValue[0][$index] ) ) { | |
| 204 echo "<td>".$trValue[0][$index]."</td>"; | |
| 205 } else { | |
| 206 echo "<td> </td>"; | |
| 207 } | |
| 208 } | |
| 209 } | |
| 210 if ( isset( $trValue["other"] ) ) { | |
| 211 echo "<td>".$trValue["other"]."</td>"; | |
| 212 } else { | |
| 213 echo "<td> </td>"; | |
| 214 } | |
| 215 if ( isset( $trValue["full"] ) ) { | |
| 216 echo "<td>".$trValue["full"]."</td>"; | |
| 217 } else { | |
| 218 echo "<td> </td>"; | |
| 219 } | |
| 220 echo "</tr>"; | |
| 221 } | |
| 222 ?> | |
| 223 </table> | |
| 224 </body> | |
| 225 </html> |
