Nucleus CMS日本語版用プラグインのうち、日本語版開発者がサポートしているもの
Revision | 8f2c9423a983de4cf24157a341d58cff9233fbc1 (tree) |
---|---|
Time | 2006-10-04 09:10:00 |
Author | shizuki <shizuki@1ca2...> |
Commiter | shizuki |
bug fix
git-svn-id: https://svn.sourceforge.jp/svnroot/nucleus-jp/plugin@413 1ca29b6e-896d-4ea0-84a5-967f57386b96
@@ -140,25 +140,29 @@ class NP_TagEX extends NucleusPlugin | ||
140 | 140 | // Escape SQL query strings |
141 | 141 | if (is_array($value)) { |
142 | 142 | if (get_magic_quotes_gpc()) { |
143 | - $value = array_map("stripslashes",$value); | |
143 | + $value = array_map("stripslashes", $value); | |
144 | 144 | } |
145 | 145 | if (!array_map("is_numeric",$value)) { |
146 | - if (version_compare(phpversion(),"4.3.0") == "-1") { | |
146 | + if (version_compare(phpversion(),"4.0.3") == "-1") { | |
147 | 147 | $value = array_map("mysql_escape_string",$value); |
148 | 148 | } else { |
149 | 149 | $value = array_map("mysql_real_escape_string",$value); |
150 | 150 | } |
151 | + } else { | |
152 | + $value = intval($value); | |
151 | 153 | } |
152 | 154 | } else { |
153 | 155 | if (get_magic_quotes_gpc()) { |
154 | 156 | $value = stripslashes($value); |
155 | 157 | } |
156 | 158 | if (!is_numeric($value)) { |
157 | - if (version_compare(phpversion(),"4.3.0") == "-1") { | |
159 | + if (version_compare(phpversion(),"4.0.3") == "-1") { | |
158 | 160 | $value = "'" . mysql_escape_string($value) . "'"; |
159 | 161 | } else { |
160 | 162 | $value = "'" . mysql_real_escape_string($value) . "'"; |
161 | 163 | } |
164 | + } else { | |
165 | + $value = intval($value); | |
162 | 166 | } |
163 | 167 | } |
164 | 168 | return $value; |
@@ -510,6 +514,7 @@ function resetOlder(old){ | ||
510 | 514 | } |
511 | 515 | |
512 | 516 | if ($archive) { |
517 | + $y = $m = $d = ''; | |
513 | 518 | sscanf($archive, '%d-%d-%d', $y, $m, $d); |
514 | 519 | if ($d) { |
515 | 520 | $timestamp_start = mktime(0, 0, 0, $m, $d, $y); |
@@ -1087,23 +1092,23 @@ tagIndexSeparator | ||
1087 | 1092 | // <mod by shizuki> |
1088 | 1093 | if (isset($ready)) { |
1089 | 1094 | $ready = preg_replace('|[^a-z0-9-~+_.?#=&;,/:@%]|i', '', $ready); |
1090 | - $reqReadyPlus = explode('+', $ready); | |
1091 | - foreach ($reqReadyPlus as $ANDkey => $ANDval) { | |
1095 | + $reqReadyAND = explode('+', $ready); | |
1096 | + foreach ($reqReadyAND as $ANDkey => $ANDval) { | |
1092 | 1097 | if (strpos(':', $ANDval)) { |
1093 | - $reqReadyOr = explode(':', $ANDval); | |
1094 | - foreach ($reqReadyOr as $ORkey => $ORval) { | |
1098 | + $reqReadyOR = explode(':', $ANDval); | |
1099 | + foreach ($reqReadyOR as $ORkey => $ORval) { | |
1095 | 1100 | if (!$this->_isValidTag($ORval)) { |
1096 | - $trush = array_splice($reqReadyOr); | |
1101 | + $trush = array_splice($reqReadyOR); | |
1097 | 1102 | } |
1098 | 1103 | } |
1099 | - $ANDval = implode(':', $reqReadyOr); | |
1104 | + $ANDval = implode(':', $reqReadyOR); | |
1100 | 1105 | } else { |
1101 | 1106 | if (!$this->_isValidTag($ANDval)) { |
1102 | 1107 | $trush = array_splice($reqReadyAND); |
1103 | 1108 | } |
1104 | 1109 | } |
1105 | 1110 | } |
1106 | - $ready = implode('+', $reqReadyPlus); | |
1111 | + $ready = implode('+', $reqReadyAND); | |
1107 | 1112 | } |
1108 | 1113 | // </mod by shizuki> |
1109 | 1114 |
@@ -1134,15 +1139,11 @@ tagIndexSeparator | ||
1134 | 1139 | */ |
1135 | 1140 | function _isValidTag($encodedTag) |
1136 | 1141 | { |
1137 | - $encodedTag = rawurldecode($str); | |
1142 | + $encodedTag = rawurldecode($encodedTag); | |
1138 | 1143 | if (_CHERSET != 'UTF-8') { |
1139 | 1144 | $str = mb_convert_encoding($encodedTag, _CHARSET, "UTF-8"); |
1140 | 1145 | } |
1141 | - if (version_compare(phpversion(),"4.3.0")=="-1") { | |
1142 | - $str = '"' . mysql_escape_string($str) . '"'; | |
1143 | - } else { | |
1144 | - $str = '"' . mysql_real_escape_string($str) . '"'; | |
1145 | - } | |
1146 | + $str = quote_smart($str); | |
1146 | 1147 | $q = 'SELECT listid as result FROM %s WHERE tag = %s'; |
1147 | 1148 | $Vali = quickQuery(sprintf($q, sql_table('plug_tagex_klist'), $str)); |
1148 | 1149 | if (mysql_nums_row($Vali)) { |