php实现城市切换
<?php/**///»ñÈ¡ip/*include_once('./qqwry.php');$QQWry=new QQWry; function get_real_ip(){$ip=false;if(!empty($_SERVER["HTTP_CLIENT_IP"])){$ip = $_SERVER["HTTP_CLIENT_IP"];}if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {$ips = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']);if ($ip) { array_unshift($ips, $ip); $ip = FALSE; }for ($i = 0; $i < count($ips); $i++) {if (!eregi ("^(10|172\.16|192\.168)\.", $ips[$i])) {$ip = $ips[$i];break;}}}return $ip;}function is_ip($str) { $ip = explode(".", $str); if (count($ip)<4 || count($ip)>4) return 0; foreach($ip as $ip_addr) { if ( !is_numeric($ip_addr) ) return 0; if ( $ip_addr<0 || $ip_addr>255 ) return 0; } return 1;}$ip=$_SERVER['REMOTE_ADDR']; $ifErr=$QQWry->QQWry($ip); $city = $QQWry->Country.$QQWry->Local;//echo $city;*/if (strpos($city,'玄武区')!==false){ $city = "玄武区";}else if(strpos($city,'仙林')!==false){ $city = "仙林";}else if(strpos($city,'秦淮区')!==false){ $city = "秦淮区";}else if(strpos($city,'江宁')!==false){ $city = "江宁";}else if(strpos($city,'鼓楼')!==false){ $city = "鼓楼";}else{ $city = "栖霞";}if (isset($_GET['chengshi'])) { //Ê×Ïȼì²âÊÇ·ñ»ñµÃÁË GET ´«µÝµÄÊý¾Ý setcookie("cookie_city",$_GET['chengshi'],time()+3600*24);$city = $_GET['chengshi']; } else if (isset($_COOKIE["cookie_city"])) { //¼ì²âÊÇ·ñ´æÔÚêdzÆCookie $city = $_COOKIE["cookie_city"]; //ÏÔʾCookie±£´æµÄÊý¾Ý } else { setcookie("cookie_city",$city,time()+3600*24); //´¿³õʼ»¯´Ë±äÁ¿ $_COOKIE["cookie_city"] = $city;} ?><!DOCTYPE html><html><head><meta charset="utf-8"/><LINK href="css/css.css" type=text/css rel=stylesheet><SCRIPT src="js/jquery-1.4.2.min.js" type=text/javascript></SCRIPT><title>城市切换</title></head><BODY><DIV id=allCity style="DISPLAY: none"><DIV><TABLE> <TBODY> <TR> <TD><A href="show.html">玄武区</A></TD> <TD><A href="show1.html">仙林</A></TD> <TD><A href="show2.html">秦淮区</A></TD> <TD><A href="show3.html">鼓楼</A></TD> <TD><A href="show4.html">江宁</A></TD> <TD><A href="show5.html">栖霞区</A></TD> </TR> </TBODY></TABLE><DIV><A id=foldin href="javascript:;">全部</A></DIV></DIV></DIV><DIV> <DIV> <DIV> <DIV class="topCtiy clear"> <UL> <LI><A href="index.php">全部小区</A></LI> <LI> <?php echo $city; ?> </LI> <LI id=changeCity>切换城市</LI> </UL> </DIV> </DIV> </DIV></DIV><SCRIPT type=text/javascript>jQuery(function(){ $("#changeCity").click(function(a){ $("#allCity").slideDown(300); a.stopPropagation(); $(this).blur(); }); $("#allCity").click(function(a){ a.stopPropagation() }); $(document).click(function(a){ a.button!=2 && $("#allCity").slideUp(300) }); $("#foldin").click(function(){ $("#allCity").slideUp(300) });});</SCRIPT></body></html>
钟志远 江苏南京 904727147

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

JWT是一種基於JSON的開放標準,用於在各方之間安全地傳輸信息,主要用於身份驗證和信息交換。 1.JWT由Header、Payload和Signature三部分組成。 2.JWT的工作原理包括生成JWT、驗證JWT和解析Payload三個步驟。 3.在PHP中使用JWT進行身份驗證時,可以生成和驗證JWT,並在高級用法中包含用戶角色和權限信息。 4.常見錯誤包括簽名驗證失敗、令牌過期和Payload過大,調試技巧包括使用調試工具和日誌記錄。 5.性能優化和最佳實踐包括使用合適的簽名算法、合理設置有效期、

會話劫持可以通過以下步驟實現:1.獲取會話ID,2.使用會話ID,3.保持會話活躍。在PHP中防範會話劫持的方法包括:1.使用session_regenerate_id()函數重新生成會話ID,2.通過數據庫存儲會話數據,3.確保所有會話數據通過HTTPS傳輸。

SOLID原則在PHP開發中的應用包括:1.單一職責原則(SRP):每個類只負責一個功能。 2.開閉原則(OCP):通過擴展而非修改實現變化。 3.里氏替換原則(LSP):子類可替換基類而不影響程序正確性。 4.接口隔離原則(ISP):使用細粒度接口避免依賴不使用的方法。 5.依賴倒置原則(DIP):高低層次模塊都依賴於抽象,通過依賴注入實現。

在PHPStorm中如何進行CLI模式的調試?在使用PHPStorm進行開發時,有時我們需要在命令行界面(CLI)模式下調試PHP�...

PHP8.1中的枚舉功能通過定義命名常量增強了代碼的清晰度和類型安全性。 1)枚舉可以是整數、字符串或對象,提高了代碼可讀性和類型安全性。 2)枚舉基於類,支持面向對象特性,如遍歷和反射。 3)枚舉可用於比較和賦值,確保類型安全。 4)枚舉支持添加方法,實現複雜邏輯。 5)嚴格類型檢查和錯誤處理可避免常見錯誤。 6)枚舉減少魔法值,提升可維護性,但需注意性能優化。

如何在系統重啟後自動設置unixsocket的權限每次系統重啟後,我們都需要執行以下命令來修改unixsocket的權限:sudo...

靜態綁定(static::)在PHP中實現晚期靜態綁定(LSB),允許在靜態上下文中引用調用類而非定義類。 1)解析過程在運行時進行,2)在繼承關係中向上查找調用類,3)可能帶來性能開銷。
