根据域名调用城市信息[全国二级域名]
根据域名调用城市信息[全国二级域名]
本文章为你做一个页面,根据用户输入的域名调用不同城市的信息
function getServerName()
{
$ServerName = strtolower($_SERVER['SERVER_NAME']?$_SERVER['SERVER_NAME']:$_SERVER['HTTP_HOST']);
if( strpos($ServerName,'http://') )
{
return str_replace('http://','',$ServerName);
}
return $ServerName;
}
/*
@取得城市编号
#$sn string
#return int;
*/
function getDomainCity( $sn )
{
if( empty( $sn ) )
{
return 0;
}
else
{
$Db = new Db();
$sql = "Select id,domain from cityid where domain='$sn' limit 1";
$query = $Db->query( $sql );
if( $Db->row )
{
$rs = $Db->fetch( $query);
return $rs[0];
}
else
{
return 0;
}
}
}
HTML代码:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> AJAX JSON DEMO </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<script src="js/jquery1.2.6.js" type="text/javascript"></script>
<style type="text/css">
.json{width:80px; height:22px; line-height:22px; text-align:center; background:#999; color:white; font-size:14px; display:block; cursor:hand;}
.content{border:1px solid #999;padding:1em;margin:1em;font-size:14px;color:black;}
</style>
</HEAD>
<BODY>
<script>
(function($){
$.fn.RichmondJson = function(ajaxDiv)
{
$.ajax({
url : 'data.php',
type : 'get',
dataType : 'json',
data : {'inajax':1},
timeout : 3000,
cache : false,
complete : function(){},
success : function(data)
{
var s = '';
$.each(data,function()
{
s += '<p>姓名:'+this.name+' 昵称:'+this.nick+'</p>';
});
$(s).appendTo('#'+ajaxDiv);
}
});
}
})(jQuery);
</script>
<script>
function Richmond()
{
var rm = new Object;
rm.loaded = false;
rm.json = function()
{
if(!rm.loaded)
{
jQuery(this).RichmondJson.apply(this,arguments);
rm.loaded = !rm.loaded;
}
else
{
alert('无需重复加载!');
return false;
}
}
return rm;
}
var myobj = new Richmond();
</script>
jQuery框架AJAX返回JSON数据
<div id="content" class="content"></div>
<a href="javascript:myobj.json('content')" class="json">JSON</a>
</BODY>
</HTML>
PHP代码:
<?php
if($_GET['inajax'])
{
$arr = array(
array('name' => 'Richmond', 'nick' => iconv('gbk','utf-8','财富星空')),
array('name' => '343548', 'nick' => iconv('gbk','utf-8','笨笨草')),
array('name' => 'iceblue', 'nick' => iconv('gbk','utf-8','冰蓝'))
);
$json_string = json_encode($arr);
echo $json_string;
//echo '<br><br><br>';
//$obj = json_decode($json_string,true);
//print_r($obj);
}
?>
php+mysql第一条数据无法显示的原因和解决方法
while($row=@mysql_fetch_row($result))”读取数据之前,已经使用“if(@mysql_fetch_row($result))”对有无符合条件的数据进行了一次判断,使指针指向了第二条数据。
解决方法:判断有无符合条件的数据时,使用“if(@mysql_num_rows($result))”,代码如下:
<?php
if(@mysql_num_rows($result)){
while($row=@mysql_fetch_row($result)){
print_r($row);
}
mysql_free_result($result);
}else{
echo "没有符合条件的数据";
}
?>
php 定义php代码运行时间
定义和用法
time_sleep_until() 函数延迟代码执行直到指定的时间。
语法
time_sleep_until(timestamp)
参数 描述
timestamp 必需。脚本唤醒时的时间戳。
说明
使脚本暂停执行,直到指定的 timestamp。
返回值
如果成功则返回 TRUE,失败则返回 FALSE。
错误/异常
如果指定的时间戳位于过去,则该函数将生成一个 E_WARNING。
提示和注释
注释:所有信号都将在脚本唤醒后递送。
注释:本函数未在 Windows 平台下实现。
time_sleep_until
(PHP 5 >= 5.1.0)
time_sleep_until — Make the script sleep until the specified time
设置脚本延迟执行的时间
<?php
if (!function_exists('time_sleep_until')) {
function time_sleep_until($future) {
if ($future < time()) {
trigger_error("Time in past", E_USER_WARNING);
return false;
}
sleep($future - time());
return true;
}
}
?>
<?php
//Implementation for < 5.1 or Windows users
if (!function_exists('time_sleep_until')) {
function time_sleep_until($future) {
if ($future < time()) {
trigger_error("Time in past", E_USER_WARNING);
return false;
}
usleep(($future - microtime(1))*1000000);
return true;
}
}
?>
<?php
//returns false and generates a warning
var_dump(time_sleep_until(time()-1));
// may only work on faster computers, will sleep up to 0.2 seconds
var_dump(time_sleep_until(time()+0.2));
?>
<?php
// +----------------------------------------------------------------------+
// | PHP Version 4 |
// +----------------------------------------------------------------------+
// | Copyright (c) 1997-2004 The PHP Group |
// +----------------------------------------------------------------------+
// | This source file is subject to version 3.0 of the PHP license, |
// | that is bundled with this package in the file LICENSE, and is |
// | available at through the world-wide-web at |
// | http://www.php.net/license/3_0.txt. |
// | If you did not receive a copy of the PHP license and are unable to |
// | obtain it through the world-wide-web, please send a note to |
// | license@php.net so we can mail you a copy immediately. |
// +----------------------------------------------------------------------+
// | Authors: Arpad Ray <arpad@php.net> |
// +----------------------------------------------------------------------+
//
// $Id: time_sleep_until.php,v 1.2 2005/12/07 21:08:57 aidan Exp $
/**
* Replace time_sleep_until()
*
* @category PHP
* @package PHP_Compat
* @link http://php.net/time_sleep_until
* @author Arpad Ray <arpad@php.net>
* @version $Revision: 1.2 $
* @since PHP 5.1.0
* @require PHP 4.0.1 (trigger_error)
*/
if (!function_exists('time_sleep_until')) {
function time_sleep_until($timestamp)
{
list($usec, $sec) = explode(' ', microtime());
$now = $sec + $usec;
if ($timestamp <= $now) {
user_error('Specified timestamp is in the past', E_USER_WARNING);
return false;
}
$diff = $timestamp - $now;
usleep($diff * 1000000);
return true;
}
}
?>
php 简单简洁分页类
<?php
/**
*-------------------------翻页类----------------------*
*/
class PageClass
{
private $myde_count; //总记录数
var $myde_size; //每页记录数
private $myde_page; //当前页
private $myde_page_count; //总页数
private $page_url; //页面url
private $page_i; //起始页
private $page_ub; //结束页
var $page_limit;
function __construct($myde_count=0, $myde_size=1, $myde_page=1,$page_url)//构造函数
{
$this -> myde_count = $this -> numeric($myde_count);
$this -> myde_size = $this -> numeric($myde_size);
$this -> myde_page = $this -> numeric($myde_page);
$this -> page_limit = ($this -> myde_page * $this -> myde_size) - $this -> myde_size;
$this -> page_url = $page_url;
if($this -> myde_page < 1) $this -> myde_page =1;
if($this -> myde_count < 0) $this -> myde_page =0;
$this -> myde_page_count = ceil($this -> myde_count/$this -> myde_size);
if($this -> myde_page_count < 1) $this -> myde_page_count = 1;
if($this -> myde_page > $this -> myde_page_count) $this -> myde_page = $this -> myde_page_count;
$this -> page_i = $this -> myde_page - 2;
$this -> page_ub = $this -> myde_page + 2;
if($this -> page_i < 1){
$this -> page_ub = $this -> page_ub + (1 - $this -> page_i);
$this -> page_i = 1;
}
if($this -> page_ub > $this -> myde_page_count){
$this -> page_i = $this -> page_i - ($this -> page_ub - $this -> myde_page_count);
$this -> page_ub = $this -> myde_page_count;
if($this -> page_i < 1) $this -> page_i = 1;
}
}
private function numeric($id) //判断是否为数字
{
if (strlen($id)){
if (!ereg("^[0-9]+$",$id)){
$id = 1;
}else{
$id = substr($id,0,11);
}
}else{
$id = 1;
}
return $id;
}
private function page_replace($page) //地址替换
{
return str_replace("{page}", $page, $this -> page_url);
}
private function myde_home() //首页
{
if($this -> myde_page != 1){
return " <li class="page_a"><a href="".$this -> page_replace(1)."" title="首页" >首页</a></li>n";
}else{
return " <li>首页</li>n";
}
}
private function myde_prev() //上一页
{
if($this -> myde_page != 1){
return " <li class="page_a"><a href="".$this -> page_replace($this->myde_page-1) ."" title="上一页" >上一页</a></li>n";
}else{
return " <li>上一页</li>n";
}
}
private function myde_next() //下一页
{
if($this -> myde_page != $this -> myde_page_count){
return " <li class="page_a"><a href="".$this -> page_replace($this->myde_page+1) ."" title="下一页" >下一页</a></li>n";
}else{
return " <li>下一页</li>n";
}
}
private function myde_last() //尾页
{
if($this -> myde_page != $this -> myde_page_count){
return " <li class="page_a"><a href="".$this -> page_replace($this -> myde_page_count)."" title="尾页" >尾页</a></li>n";
}else{
return " <li>尾页</li>n";
}
}
function myde_write($id='page') //输出
{
$str = "<div id="".$id."" class="pages">n <ul>n ";
$str .= " <li>总记录:<span>".$this -> myde_count."</span></li>n";
$str .= " <li><span>".$this -> myde_page."</span>/<span>".$this -> myde_page_count."</span></li>n";
$str .= $this -> myde_home();
$str .= $this -> myde_prev();
for($page_for_i = $this -> page_i;$page_for_i <= $this -> page_ub; $page_for_i++){
if($this -> myde_page == $page_for_i){
$str .= " <li class="on">".$page_for_i."</li>n";
}
else{
$str .= " <li class="page_a"><a href="".$this -> page_replace($page_for_i)."" title="第".$page_for_i."页">";
$str .= $page_for_i . "</a></li>n";
}
}
$str .= $this -> myde_next();
$str .= $this -> myde_last();
$str .= " <li class="pages_input"><input type="text" value="".$this -> myde_page.""";
$str .= " onkeydown="javascript: if(event.keyCode==13){ location='";
$str .= $this -> page_replace("'+this.value+'")."';return false;}"";
$str .= " title="输入您想要到达的页码" /></li>n";
$str .= " </ul>n <div class="page_clear"></div>n</div>";
return $str;
}
}
/*-------------------------实例--------------------------------*
$page = new PageClass(1000,5,$_GET['page'],'?page={page}');//用于动态
$page = new PageClass(1000,5,$_GET['page'],'list-{page}.html');//用于静态或者伪静态
$page -> myde_write();//显示
*/
?>
相关文章
- 这篇文章主要介绍了Spring AOP 对象内部方法间的嵌套调用方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-08-29
- <?php require('path.inc.php'); header('content-Type: text/html; charset=utf-8'); $borough_id = intval($_GET['id']); if(!$borough_id){ echo ' ...2016-11-25
- 这篇文章主要介绍了c# 三种方法调用WebService接口的相关资料,文中示例代码非常详细,帮助大家更好的理解和学习,感兴趣的朋友可以了解下...2020-07-07
- 这篇文章主要介绍了js实现调用网络摄像头及常见错误处理,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-03-07
- 这篇文章介绍了c#动态调用Webservice的两种方法实例,有需要的朋友可以参考一下...2020-06-25
- 这篇文章主要给大家介绍了关于c#中的WebService及其调用方式的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-06-25
- 这篇文章主要介绍了解决Vue watch里调用方法的坑,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-11-07
- 这篇文章主要介绍了解决vue watch数据的方法被调用了两次的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-11-07
- 下面小编就为大家带来一篇C#中加载dll并调用其函数的实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2020-06-25
详解nginx同一端口监听多个域名和同时监听http与https
这篇文章主要介绍了详解nginx同一端口监听多个域名和同时监听http与https的相关资料,需要的朋友可以参考下...2017-07-06- 本文章来给大家详细介绍在php中如何来调用执行mysql存储过程然后返回由存储过程返回的值了,有需要了解的同学可进入参考。 。调用存储过程的方法。 a。如果存储过...2016-11-25
- 我们要明确,为什么要进行异步回调?众所周知,普通方法运行,是单线程的,如果中途有大型操作(如:读取大文件,大批量操作数据库,网络传输等),都会导致方法阻塞,表现在界面上就是,程序卡或者死掉,界面元素不动了,不响应了...2020-06-25
- 这篇文章主要介绍了C#调用python脚本的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-06-25
- 这篇文章主要介绍了javascript实现方法调用与方法触发小结的相关资料,需要的朋友可以参考下...2016-03-30
- 方法一:直接调用复制代码 代码如下:<? /******************************************************************************/ /* 文件名 : soapclient.php /* 说 明 : WebService接口客户端例程 /****************...2014-06-07
- 下面小编就为大家分享一篇基于C#调用c++Dll结构体数组指针的问题详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-06-25
- 下面小编就为大家带来一篇C# Soap调WebService的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-06-25
- 这篇文章主要介绍了Python调用.NET库的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-05-09
- 下面小编就为大家分享一篇基于C#调用OCX控件的常用方法推荐,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-06-25
- 访问一个类的私有成员不是什么好做法,大家也都知道私有成员在外部是不能被访问的,这篇文章主要给大家介绍了关于C#访问及调用类中私有成员与方法的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下...2020-06-25