This project does not seem to handle request data directly as such no vulnerable execution paths were found.
include
, or for example
via PHP's auto-loading mechanism.
These results are based on our legacy PHP analysis, consider migrating to our new PHP analysis engine instead. Learn more
1 | <?php |
||
2 | |||
3 | include __DIR__ . '/header.php'; |
||
4 | include_once __DIR__ . '/class/utility.php'; |
||
5 | //xoops_load('utility', $xoopsModule->getVar('dirname')); |
||
6 | $lid = MylinksUtility::mylinks_cleanVars($_GET, 'lid', 0, 'int', array('min' => 0)); |
||
7 | $cid = MylinksUtility::mylinks_cleanVars($_GET, 'cid', 0, 'int', array('min' => 0)); |
||
8 | if (empty($lid) || empty($cid)) { |
||
9 | redirect_header('index.php', 3, _MD_MYLINKS_IDERROR); |
||
10 | } |
||
11 | /* |
||
12 | $lid = isset($_GET['lid']) ? intval($_GET['lid']) : 0; |
||
13 | $cid = isset($_GET['cid']) ? intval($_GET['cid']) : 0; |
||
14 | if ( empty($lid) ) { |
||
15 | die("No lid!"); |
||
16 | } elseif ( empty($cid) ) { |
||
17 | die("No cid!"); |
||
18 | } |
||
19 | */ |
||
20 | $result = $xoopsDB->query('SELECT l.lid, l.cid, l.title, l.url FROM ' . $xoopsDB->prefix('mylinks_links') . ' l, ' . $xoopsDB->prefix('mylinks_text') . " t where l.lid={$lid} AND l.lid=t.lid AND status>0"); |
||
21 | if (!$result) { |
||
22 | redirect_header('index.php', 3, _MD_MYLINKS_NORECORDFOUND); |
||
23 | exit(); |
||
24 | } |
||
25 | list($lid, $cid, $ltitle, $url) = $xoopsDB->fetchRow($result); |
||
26 | |||
27 | //bookmark func |
||
28 | View Code Duplication | switch ($mylinks_can_bookmark) { |
|
29 | case _MD_MYLINKS_MEMBERONLY: |
||
30 | $can_bookmark = $xoopsUser ? _MD_MYLINKS_ALLOW : _MD_MYLINKS_DISALLOW; |
||
31 | break; |
||
32 | case _MD_MYLINKS_ALLOW: |
||
33 | $can_bookmark = _MD_MYLINKS_ALLOW; |
||
34 | break; |
||
35 | case _MD_MYLINKS_DISALLOW: |
||
36 | default: |
||
37 | $can_bookmark = _MD_MYLINKS_DISALLOW; |
||
38 | break; |
||
39 | } |
||
40 | if (_MD_MYLINKS_DISALLOW == $can_bookmark) { |
||
41 | redirect_header('index.php', 3, _MD_MYLINKS_BOOKMARKDISALLOWED); |
||
42 | exit(); |
||
43 | } |
||
44 | |||
45 | /* |
||
46 | $can_bookmark = 0; |
||
47 | if ( $mylinks_can_bookmark == 0 ) { |
||
48 | $can_bookmark = 0; |
||
49 | } |
||
50 | else if ( $mylinks_can_bookmark == 1) { |
||
51 | $can_bookmark = 1; |
||
52 | } |
||
53 | else if ( $mylinks_can_bookmark == 2) { |
||
54 | if ( $xoopsUser ) { |
||
55 | $can_bookmark =1; |
||
56 | } |
||
57 | else { |
||
58 | $can_bookmark =0; |
||
59 | } |
||
60 | } |
||
61 | else { |
||
62 | $can_bookmark = 0; |
||
63 | } |
||
64 | |||
65 | if ( empty($can_bookmark) ) { |
||
66 | die("Not allowed now!"); |
||
67 | } |
||
68 | |||
69 | $can_qrcode = 0; |
||
70 | if ( $mylinks_can_qrcode == 0 ) { |
||
71 | $can_qrcode = 0; |
||
72 | } |
||
73 | else if ( $mylinks_can_qrcode == 1) { |
||
74 | $can_qrcode = 1; |
||
75 | } |
||
76 | else if ( $mylinks_can_qrcode == 2) { |
||
77 | if ( $xoopsUser ) { |
||
78 | $can_qrcode =1; |
||
79 | } |
||
80 | else { |
||
81 | $can_qrcode =0; |
||
82 | } |
||
83 | } |
||
84 | else { |
||
85 | $can_qrcode = 0; |
||
86 | } |
||
87 | |||
88 | if ( empty($can_qrcode) ) { |
||
89 | die("Not allowed now!"); |
||
90 | } |
||
91 | */ |
||
92 | |||
93 | xoops_header(false); |
||
94 | |||
95 | $myts = MyTextSanitizer::getInstance(); |
||
96 | |||
97 | $sitetitle = $myts->htmlSpecialChars($myts->stripSlashesGPC($ltitle)); |
||
98 | $siteurl = $myts->htmlSpecialChars($url); |
||
99 | |||
100 | $siteurl_en = urlencode(mb_convert_encoding($siteurl, 'UTF-8', _CHARSET)); |
||
101 | $sitetitle_en = urlencode(mb_convert_encoding($sitetitle, 'UTF-8', _CHARSET)); |
||
102 | |||
103 | /** |
||
104 | * @param $str |
||
105 | * @param string $to |
||
106 | * @param string $from |
||
107 | * @return array|string |
||
108 | */ |
||
109 | View Code Duplication | function bookmark_convert_encoding($str, $to = 'SJIS', $from = _CHARSET) |
|
110 | { |
||
111 | if (function_exists('mb_convert_encoding')) { |
||
112 | if (is_array($str)) { |
||
113 | foreach ($str as $key => $val) { |
||
114 | $str[$key] = bookmark_convert_encoding($val, $to, $from); |
||
115 | } |
||
116 | |||
117 | return $str; |
||
118 | } else { |
||
119 | return mb_convert_encoding($str, $to, $from); |
||
120 | } |
||
121 | } else { |
||
122 | return $str; |
||
123 | } |
||
124 | } |
||
125 | |||
126 | /** |
||
127 | * @param string $data |
||
128 | * @return array|mixed|string |
||
129 | */ |
||
130 | function bookmark_qrcode_encoding($data = '') |
||
131 | { |
||
132 | $data = bookmark_convert_encoding($data); |
||
133 | $data = rawurlencode($data); |
||
134 | $data = str_replace('%20', '+', $data); |
||
135 | |||
136 | return $data; |
||
137 | } |
||
138 | |||
139 | $qrcodedata_url = bookmark_qrcode_encoding($siteurl); |
||
140 | $siteqrcode = "<img alt='" . $siteurl . "' title='" . $siteurl . "'src='" . XOOPS_URL . "/modules/qrcode/qrcode_image.php?d=$qrcodedata_url&e=M&s=4&v=0&t=P&rgb=000000'>\n"; |
||
141 | |||
142 | /* |
||
143 | $qrcodedata_docomo_bookmark = bookmark_qrcode_encoding("MEBKM:TITLE:".$sitetitle.";URL:".$siteurl.";;"); |
||
144 | $bookmarkqrcode_docomo = "<img alt='docomo' title='docomo'src='".XOOPS_URL."/modules/qrcode/qrcode_image.php?d=$qrcodedata_docomo_bookmark&e=M&s=4&v=0&t=P&rgb=000000'>\n"; |
||
145 | |||
146 | $qrcodedata_softbank_bookmark = bookmark_qrcode_encoding("TITLE:".$sitetitle."\r\nURL:".$siteurl."\r\n"); |
||
147 | $bookmarkqrcode_softbank = "<img alt='softbank and au' title='softbank and au'src='".XOOPS_URL."/modules/qrcode/qrcode_image.php?d=$qrcodedata_softbank_bookmark&e=M&s=4&v=0&t=P&rgb=000000'>\n"; |
||
148 | |||
149 | $qrcodedata_bookmark = bookmark_qrcode_encoding("TITLE:\r\n".$sitetitle."\r\nURL:\r\n".$siteurl."\r\n"); |
||
150 | $bookmarkqrcode = "<img alt='title and url' title='title and url'src='".XOOPS_URL."/modules/qrcode/qrcode_image.php?d=$qrcodedata_bookmark&e=M&s=4&v=0&t=P&rgb=000000'>\n"; |
||
151 | */ |
||
152 | |||
153 | //google pagerank |
||
154 | define('GOOGLE_MAGIC', 0xE6359A60); |
||
155 | |||
156 | /** |
||
157 | * @param $a |
||
158 | * @param $b |
||
159 | * @return int|number |
||
160 | */ |
||
161 | function zeroFill($a, $b) |
||
162 | { |
||
163 | $z = hexdec(80000000); |
||
164 | if ($z & $a) { |
||
165 | $a = ($a >> 1); |
||
166 | $a &= (~$z); |
||
167 | $a |= 0x40000000; |
||
168 | $a = ($a >> ($b - 1)); |
||
169 | } else { |
||
170 | $a = ($a >> $b); |
||
171 | } |
||
172 | |||
173 | return $a; |
||
174 | } |
||
175 | |||
176 | /** |
||
177 | * @param $a |
||
178 | * @param $b |
||
179 | * @param $c |
||
180 | * @return array |
||
181 | */ |
||
182 | function mix($a, $b, $c) |
||
183 | { |
||
184 | $a -= $b; |
||
185 | $a -= $c; |
||
186 | $a ^= zeroFill($c, 13); |
||
187 | $b -= $c; |
||
188 | $b -= $a; |
||
189 | $b ^= ($a << 8); |
||
190 | $c -= $a; |
||
191 | $c -= $b; |
||
192 | $c ^= zeroFill($b, 13); |
||
193 | $a -= $b; |
||
194 | $a -= $c; |
||
195 | $a ^= zeroFill($c, 12); |
||
196 | $b -= $c; |
||
197 | $b -= $a; |
||
198 | $b ^= ($a << 16); |
||
199 | $c -= $a; |
||
200 | $c -= $b; |
||
201 | $c ^= zeroFill($b, 5); |
||
202 | $a -= $b; |
||
203 | $a -= $c; |
||
204 | $a ^= zeroFill($c, 3); |
||
205 | $b -= $c; |
||
206 | $b -= $a; |
||
207 | $b ^= ($a << 10); |
||
208 | $c -= $a; |
||
209 | $c -= $b; |
||
210 | $c ^= zeroFill($b, 15); |
||
211 | |||
212 | return array($a, $b, $c); |
||
213 | } |
||
214 | |||
215 | /** |
||
216 | * @param $url |
||
217 | * @param null $length |
||
218 | * @param int $init |
||
219 | * @return mixed |
||
220 | */ |
||
221 | function GoogleCH($url, $length = null, $init = GOOGLE_MAGIC) |
||
222 | { |
||
223 | if (null === $length) { |
||
224 | $length = count($url); |
||
225 | } |
||
226 | $a = $b = 0x9E3779B9; |
||
227 | $c = $init; |
||
228 | $k = 0; |
||
229 | $len = $length; |
||
230 | while ($len >= 12) { |
||
231 | $a += ($url[$k + 0] + ($url[$k + 1] << 8) + ($url[$k + 2] << 16) + ($url[$k + 3] << 24)); |
||
232 | $b += ($url[$k + 4] + ($url[$k + 5] << 8) + ($url[$k + 6] << 16) + ($url[$k + 7] << 24)); |
||
233 | $c += ($url[$k + 8] + ($url[$k + 9] << 8) + ($url[$k + 10] << 16) + ($url[$k + 11] << 24)); |
||
234 | $mix = mix($a, $b, $c); |
||
235 | $a = $mix[0]; |
||
236 | $b = $mix[1]; |
||
237 | $c = $mix[2]; |
||
238 | $k += 12; |
||
239 | $len -= 12; |
||
240 | } |
||
241 | |||
242 | $c += $length; |
||
243 | switch ($len) { |
||
244 | case 11: |
||
245 | $c += ($url[$k + 10] << 24); |
||
246 | case 10: |
||
247 | $c += ($url[$k + 9] << 16); |
||
248 | case 9 : |
||
249 | $c += ($url[$k + 8] << 8); |
||
250 | case 8 : |
||
251 | $b += ($url[$k + 7] << 24); |
||
252 | case 7 : |
||
253 | $b += ($url[$k + 6] << 16); |
||
254 | case 6 : |
||
255 | $b += ($url[$k + 5] << 8); |
||
256 | case 5 : |
||
257 | $b += $url[$k + 4]; |
||
258 | case 4 : |
||
259 | $a += ($url[$k + 3] << 24); |
||
260 | case 3 : |
||
261 | $a += ($url[$k + 2] << 16); |
||
262 | case 2 : |
||
263 | $a += ($url[$k + 1] << 8); |
||
264 | case 1 : |
||
265 | $a += $url[$k + 0]; |
||
266 | } |
||
267 | $mix = mix($a, $b, $c); |
||
268 | |||
269 | return $mix[2]; |
||
270 | } |
||
271 | |||
272 | /** |
||
273 | * @param $string |
||
274 | * @return mixed |
||
275 | */ |
||
276 | function strord($string) |
||
277 | { |
||
278 | for ($i = 0; $i < strlen($string); $i++) { |
||
279 | $result[$i] = ord($string{$i}); |
||
0 ignored issues
–
show
|
|||
280 | } |
||
281 | |||
282 | return $result; |
||
283 | } |
||
284 | |||
285 | /** |
||
286 | * @param $url |
||
287 | * @return string |
||
288 | */ |
||
289 | function getrank($url) |
||
290 | { |
||
291 | $pagerank = '0'; |
||
292 | $ch = '6' . GoogleCH(strord('info:' . $url)); |
||
293 | |||
294 | $fp = fsockopen('www.google.com', 80, $errno, $errstr, 30); |
||
295 | if (!$fp) { |
||
296 | $pagerank = '-1'; |
||
297 | //echo "$errstr ($errno)<br>\n"; |
||
298 | } else { |
||
299 | $out = 'GET /search?client=navclient-auto&ch=' . $ch . '&features=Rank&q=info:' . $url . " HTTP/1.1\r\n"; |
||
300 | $out .= "Host: www.google.com\r\n"; |
||
301 | $out .= "Connection: Close\r\n\r\n"; |
||
302 | |||
303 | fwrite($fp, $out); |
||
304 | |||
305 | while (!feof($fp)) { |
||
306 | $data = fgets($fp, 128); |
||
307 | $pos = strpos($data, 'Rank_'); |
||
308 | if ($pos === false) { |
||
309 | } else { |
||
310 | $pagerank = substr($data, $pos + 9); |
||
311 | } |
||
312 | } |
||
313 | fclose($fp); |
||
314 | } |
||
315 | |||
316 | return $pagerank; |
||
317 | } |
||
318 | |||
319 | // |
||
320 | |||
321 | echo ' |
||
322 | <script type="text/javascript"> |
||
323 | <!--// |
||
324 | /*********************************************** |
||
325 | * Bookmark site script-Dynamic Drive DHTML code library (www.dynamicdrive.com) |
||
326 | * This notice MUST stay intact for legal use |
||
327 | * Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code |
||
328 | ***********************************************/ |
||
329 | /* Modified to support Opera */ |
||
330 | function bookmarksite(title,url){ |
||
331 | if (window.sidebar) // firefox |
||
332 | window.sidebar.addPanel(title, url, ""); |
||
333 | else if(window.opera && window.print){ // opera |
||
334 | var elem = document.createElement("a"); |
||
335 | elem.setAttribute("href",url); |
||
336 | elem.setAttribute("title",title); |
||
337 | elem.setAttribute("rel","sidebar"); |
||
338 | elem.click(); |
||
339 | } |
||
340 | else if(document.all)// ie |
||
341 | window.external.AddFavorite(url, title); |
||
342 | } |
||
343 | //--> |
||
344 | </script> |
||
345 | </head> |
||
346 | <body> |
||
347 | <script type="text/javascript"> |
||
348 | <!--// |
||
349 | var addtoMethod=0; |
||
350 | //--> |
||
351 | </script> |
||
352 | <script src="' . XOOPSMYLINKINCURL . '/addto-multi.js" type="text/javascript"></script> |
||
353 | |||
354 | <table style="width: 95%; margin: auto;" class="outer"> |
||
355 | <tr><td colspan="2" style="text-align: center;"><h3>' . _MD_MYLINKS_BOOKMARK_SERVICE . '</h3></td></tr> |
||
356 | <tr><td class="head" style="text-align: center; font-weight: bold;">' . _MD_MYLINKS_SITETITLE . '</td><td class="even" style="text-align: center;">' . $sitetitle . '</td></tr> |
||
357 | <tr><td class="head" style="text-align: center; font-weight: bold;">' . _MD_MYLINKS_SITEURL . '</td><td class="even" style="text-align: center;"><a href="' . $siteurl . '" target="_blank">' . $siteurl . '</a><br>( <strong>Google PageRank :</strong> <img src="' . XOOPSMYLINKIMGURL |
||
358 | . '/addto/pr' . getrank($siteurl) . '.gif" alt="pagerank"> )</td></tr>'; |
||
359 | if ($mylinks_can_qrcode) { |
||
360 | echo '<tr><td class="head" style="text-align: center; font-weight: bold;">' . _MD_MYLINKS_QRCODE . '<br>(' . _MD_MYLINKS_SITEURL . ')</td><td class="even" style="text-align: center;">' . $siteqrcode . '</td></tr>'; |
||
361 | } |
||
362 | echo ' |
||
363 | <tr><td class="head" style="text-align: center; font-weight: bold;">' . _MD_MYLINKS_WEBBROWSER . '</td><td class="even" style="text-align: center;"> |
||
364 | <a href="javascript:void(0);" onclick="bookmarksite(\'' . $sitetitle . '\', \'' . $siteurl . '\');">' . _MD_MYLINKS_BROWSERBOOKMARK . '</a> |
||
365 | </td></tr> |
||
366 | </table> |
||
367 | <br><br> |
||
368 | <table style="width: 90%; margin: auto;"> |
||
369 | <tr class="foot"><td colspan="2" style="text-align: center; font-weight: bold;">' . _MD_MYLINKS_BOOKMARK_ADDTO . '...</td></tr> |
||
370 | <tr><td class="even"> |
||
371 | <span title="' . _MD_MYLINKS_BOOKMARK_ADDTO . ' Blink"><a style="cursor:pointer;" onclick="addto(1,\'' . $siteurl_en . '\', \'' . $sitetitle_en . '\')"> |
||
372 | <img src="' . XOOPSMYLINKIMGURL . '/addto/AddTo_Blink.gif" style="width: 16px; height: 16px; border-width: 0px;" alt="Blink"> Blink</a></span> |
||
373 | <br> |
||
374 | <span title="' . _MD_MYLINKS_BOOKMARK_ADDTO . ' Delicious"><a style="cursor:pointer;" onclick="addto(2,\'' . $siteurl_en . '\', \'' . $sitetitle_en . '\')"> |
||
375 | <img src="' . XOOPSMYLINKIMGURL . '/addto/AddTo_Delicious.gif" style="width: 16px; height: 16px; border-width: 0px;" alt="Del.icio.us"> Del.icio.us</a></span> |
||
376 | <br> |
||
377 | <span title="' . _MD_MYLINKS_BOOKMARK_ADDTO . ' Digg"><a style="cursor:pointer;" onclick="addto(3,\'' . $siteurl_en . '\', \'' . $sitetitle_en . '\')"> |
||
378 | <img src="' . XOOPSMYLINKIMGURL . '/addto/AddTo_Digg.gif" style="width: 16px; height: 16px; border-width: 0px;" alt="Digg"> Digg</a></span> |
||
379 | <br> |
||
380 | <span title="' . _MD_MYLINKS_BOOKMARK_ADDTO . ' Furl"><a style="cursor:pointer;" onclick="addto(4,\'' . $siteurl_en . '\', \'' . $sitetitle_en . '\')"> |
||
381 | <img src="' . XOOPSMYLINKIMGURL . '/addto/AddTo_Furl.gif" style="width: 16px; height: 16px; border-width: 0px;" alt="Furl"> Furl</a></span> |
||
382 | <br> |
||
383 | <span title="' . _MD_MYLINKS_BOOKMARK_ADDTO . ' Blue Dot"><a style="cursor:pointer;" onclick="addto(9,\'' . $siteurl_en . '\', \'' . $sitetitle_en . '\')"> |
||
384 | <img src="' . XOOPSMYLINKIMGURL . '/addto/AddTo_Bluedot.png" style="width: 16px; height: 16px; border-width: 0px;" alt="Bluedot"> Blue Dot</a></span> |
||
385 | <br> |
||
386 | <span title="' . _MD_MYLINKS_BOOKMARK_ADDTO . ' BookmarkTracker"><a style="cursor:pointer;" onclick="addto(11,\'' . $siteurl_en . '\', \'' . $sitetitle_en . '\')"> |
||
387 | <img src="' . XOOPSMYLINKIMGURL . '/addto/AddTo_Bookmarktracker.gif" style="width: 16px; height: 16px; border-width: 0px;" alt="Bookmarktracker"> BookmarkTracker</a></span> |
||
388 | <br> |
||
389 | <span title="' . _MD_MYLINKS_BOOKMARK_ADDTO . ' Hatena"><a style="cursor:pointer;" onclick="addto(13,\'' . $siteurl_en . '\', \'' . $sitetitle_en . '\')"> |
||
390 | <img src="' . XOOPSMYLINKIMGURL . '/addto/AddTo_Hatena.gif" style="width: 16px; height: 16px; border-width: 0px;" alt="Hatena"> Hatena</a></span> |
||
391 | <br> |
||
392 | <span title="' . _MD_MYLINKS_BOOKMARK_ADDTO . ' Magnolia"><a style="cursor:pointer;" onclick="addto(15,\'' . $siteurl_en . '\', \'' . $sitetitle_en . '\')"> |
||
393 | <img src="' . XOOPSMYLINKIMGURL . '/addto/AddTo_Magnolia.png" style="width: 16px; height: 16px; border-width: 0px;" alt="Magnolia"> Magnolia</a></span> |
||
394 | <br> |
||
395 | <span title="' . _MD_MYLINKS_BOOKMARK_ADDTO . ' Nifty Clip"><a style="cursor:pointer;" onclick="addto(17,\'' . $siteurl_en . '\', \'' . $sitetitle_en . '\')"> |
||
396 | <img src="' . XOOPSMYLINKIMGURL . '/addto/AddTo_Niftyclip.gif" style="width: 16px; height: 16px; border-width: 0px;" alt="Nifty Clip"> Nifty Clip</a></span> |
||
397 | <br> |
||
398 | <span title="' . _MD_MYLINKS_BOOKMARK_ADDTO . ' Pookmark"><a style="cursor:pointer;" onclick="addto(19,\'' . $siteurl_en . '\', \'' . $sitetitle_en . '\')"> |
||
399 | <img src="' . XOOPSMYLINKIMGURL . '/addto/AddTo_Pookmark.gif" style="width: 16px; height: 16px; border-width: 0px;" alt="Pookmark"> Pookmark</a></span> |
||
400 | <br> |
||
401 | <span title="' . _MD_MYLINKS_BOOKMARK_ADDTO . ' Tailrank"><a style="cursor:pointer;" onclick="addto(21,\'' . $siteurl_en . '\', \'' . $sitetitle_en . '\')"> |
||
402 | <img src="' . XOOPSMYLINKIMGURL . '/addto/AddTo_Tailrank.png" style="width: 16px; height: 16px; border-width: 0px;" alt="Tailrank"> Tailrank</a></span> |
||
403 | <br> |
||
404 | <span title="' . _MD_MYLINKS_BOOKMARK_ADDTO . ' Technorati"><a style="cursor:pointer;" onclick="addto(23,\'' . $siteurl_en . '\', \'' . $sitetitle_en . '\')"> |
||
405 | <img src="' . XOOPSMYLINKIMGURL . '/addto/AddTo_Technorati.png" style="width: 16px; height: 16px; border-width: 0px;" alt="Technorati"> Technorati</a></span> |
||
406 | |||
407 | </td> |
||
408 | <td class="odd"> |
||
409 | <span title="' . _MD_MYLINKS_BOOKMARK_ADDTO . ' Google"><a style="cursor:pointer;" onclick="addto(5,\'' . $siteurl_en . '\', \'' . $sitetitle_en . '\')"> |
||
410 | <img src="' . XOOPSMYLINKIMGURL . '/addto/AddTo_Google.gif" style="width: 16px; height: 16px; border-width: 0px;" alt="Google"> Google</a></span> |
||
411 | <br> |
||
412 | <span title="' . _MD_MYLINKS_BOOKMARK_ADDTO . ' Simpy"><a style="cursor:pointer;" onclick="addto(6,\'' . $siteurl_en . '\', \'' . $sitetitle_en . '\')"> |
||
413 | <img src="' . XOOPSMYLINKIMGURL . '/addto/AddTo_Simpy.gif" style="width: 16px; height: 16px; border-width: 0px;" alt="Simpy"> Simpy</a></span> |
||
414 | <br> |
||
415 | <span title="' . _MD_MYLINKS_BOOKMARK_ADDTO . ' Spurl"><a style="cursor:pointer;" onclick="addto(8,\'' . $siteurl_en . '\', \'' . $sitetitle_en . '\')"> |
||
416 | <img src="' . XOOPSMYLINKIMGURL . '/addto/AddTo_Spurl.gif" style="width: 16px; height: 16px; border-width: 0px;" alt="Spurl"> Spurl</a></span> |
||
417 | <br> |
||
418 | <span title="' . _MD_MYLINKS_BOOKMARK_ADDTO . ' Yahoo! MyWeb"><a style="cursor:pointer;" onclick="addto(7,\'' . $siteurl_en . '\', \'' . $sitetitle_en . '\')"> |
||
419 | <img src="' . XOOPSMYLINKIMGURL . '/addto/AddTo_Yahoo.gif" style="width: 16px; height: 16px; border-width: 0px;" alt="Y!MyWeb"> Y! MyWeb</a></span> |
||
420 | <br> |
||
421 | <span title="' . _MD_MYLINKS_BOOKMARK_ADDTO . ' Blogmarks"><a style="cursor:pointer;" onclick="addto(10,\'' . $siteurl_en . '\', \'' . $sitetitle_en . '\')"> |
||
422 | <img src="' . XOOPSMYLINKIMGURL . '/addto/AddTo_Blogmarks.png" style="width: 16px; height: 16px; border-width: 0px;" alt="Blogmarks"> Blogmarks</a></span> |
||
423 | <br> |
||
424 | <span title="' . _MD_MYLINKS_BOOKMARK_ADDTO . ' FC2"><a style="cursor:pointer;" onclick="addto(12,\'' . $siteurl_en . '\', \'' . $sitetitle_en . '\')"> |
||
425 | <img src="' . XOOPSMYLINKIMGURL . '/addto/AddTo_FC2.gif" style="width: 16px; height: 16px; border-width: 0px;" alt="FC2"> FC2 Bookmark</a></span> |
||
426 | <br> |
||
427 | <span title="' . _MD_MYLINKS_BOOKMARK_ADDTO . ' Livedoor Clip"><a style="cursor:pointer;" onclick="addto(14,\'' . $siteurl_en . '\', \'' . $sitetitle_en . '\')"> |
||
428 | <img src="' . XOOPSMYLINKIMGURL . '/addto/AddTo_Livedoorclip.gif" style="width: 16px; height: 16px; border-width: 0px;" alt="Livedoor Clip"> Livedoor Clip</a></span> |
||
429 | <br> |
||
430 | <span title="' . _MD_MYLINKS_BOOKMARK_ADDTO . ' Netscape"><a style="cursor:pointer;" onclick="addto(16,\'' . $siteurl_en . '\', \'' . $sitetitle_en . '\')"> |
||
431 | <img src="' . XOOPSMYLINKIMGURL . '/addto/AddTo_Netscape.gif" style="width: 16px; height: 16px; border-width: 0px;" alt="Netscape"> Netscape</a></span> |
||
432 | <br> |
||
433 | <span title="' . _MD_MYLINKS_BOOKMARK_ADDTO . ' Newsvine"><a style="cursor:pointer;" onclick="addto(18,\'' . $siteurl_en . '\', \'' . $sitetitle_en . '\')"> |
||
434 | <img src="' . XOOPSMYLINKIMGURL . '/addto/AddTo_Newsvine.gif" style="width: 16px; height: 16px; border-width: 0px;" alt="Newsvine"> Newsvine</a></span> |
||
435 | <br> |
||
436 | <span title="' . _MD_MYLINKS_BOOKMARK_ADDTO . ' Reddit"><a style="cursor:pointer;" onclick="addto(20,\'' . $siteurl_en . '\', \'' . $sitetitle_en . '\')"> |
||
437 | <img src="' . XOOPSMYLINKIMGURL . '/addto/AddTo_Reddit.gif" style="width: 16px; height: 16px; border-width: 0px;" alt="Reddit"> Reddit</a></span> |
||
438 | <br> |
||
439 | <span title="' . _MD_MYLINKS_BOOKMARK_ADDTO . ' Windows Live"><a style="cursor:pointer;" onclick="addto(22,\'' . $siteurl_en . '\', \'' . $sitetitle_en . '\')"> |
||
440 | <img src="' . XOOPSMYLINKIMGURL . '/addto/AddTo_Windowslive.gif" style="width: 16px; height: 16px; border-width: 0px;" alt="Windows Live"> Windows Live</a></span> |
||
441 | </td> |
||
442 | </tr></table> |
||
443 | <br><br> |
||
444 | '; |
||
445 | |||
446 | xoops_footer(); |
||
447 |
Adding an explicit array definition is generally preferable to implicit array definition as it guarantees a stable state of the code.
Let’s take a look at an example:
As you can see in this example, the array
$myArray
is initialized the first time when the foreach loop is entered. You can also see that the value of thebar
key is only written conditionally; thus, its value might result from a previous iteration.This might or might not be intended. To make your intention clear, your code more readible and to avoid accidental bugs, we recommend to add an explicit initialization $myArray = array() either outside or inside the foreach loop.