jsonp的跨域访问

原创 2013年12月02日 18:48:29

前台代码:

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=0, minimum-scale=1.0, maximum-scale=1.0">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<title>上拉下拉动态加载例子</title>
<link href="/css/jquery.mobile.structure-1.3.2.css" rel="stylesheet" type="text/css"/>
<link href="/css/jquery.mobile-1.3.2.css" rel="stylesheet" type="text/css"/>

<script src="/js/jquery.js" type="text/javascript"></script>

<script src="/js/jquery.mobile-1.3.2.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function(){
		   $("#sub").click(function(){
						 $.ajax({
										//url:'<?php echo base_url("index.php/login/checklogin") ?>',
										url:"http://localhost/index.php/login/checklogin?uname="+$("#uname").val(),
										type: "get",     
										async: false,
									//	data:{uname:$("#uname").val()},
									//	dataType: "text",
										dataType:"jsonp",
										jsonp:"callback",
										jsonpCallback:"test",
										success: function(json){
											//$("#fanhui").val(data[0].uname);
											alert('您的名字:'+json[0].uname);
										},
										error: function (jqXHR, textStatus, errorThrown) {
											 alert(textStatus[0]);
									  } 
								 });
			 });
});
</script>
</head>
<body>

<div data-role="page" id="page1">
    <div data-theme="a" data-role="header">
        <h3>
            Header
        </h3>
    </div>
    <div data-role="content">		 
         <div data-role="fieldcontain">
            <input name="uname" id="uname" placeholder="帐号" value="" type="text">
        </div>
        <div data-role="fieldcontain">
            <input name="upass" id="textinput3" placeholder="密码" value="" type="password">
        </div>
		<p id="p1"></p>
		<p id="p2">有用吗??</p>
		
        <input id="sub" type="submit" value="提交" name="sub">
		 <input type="submit" value="取消" name="">
		<h2>返回的内容</h2>
		 <div data-role="fieldcontain">
            <input name="" id="fanhui" placeholder="" value="" type="text">
        </div>
		 <button>向页面发送</button>
    </div>
<div data-role="footer" data-position="fixed">
	<div data-role="navbar" data-grid="a">
			<ul>
				<li><a href="index.html" class="ui-btn-active" data-ajax="false">首页</a></li>
				<li><a href="two.html" data-ajax="false">第二页</a></li>			
			</ul>
		</div>
</div>
</div>
</body>
</html>

CI的Model层:

<?php
class Test_m extends CI_Model
{
	function __construct()
	{
		parent::__construct();
		$this->load->database();
	}

	function user_insert($arr)
	{
		$this->db->insert('user',$arr);
	}

	function user_update($id,$arr)
	{
		$this->db->where('uid',$id);
		$this->db->update('user',$arr);
	}

	function user_del($id)
	{
		$this->db->where('uid',$id);
		$this->db->delete('user');
	}

	function user_select($name)
	{
		$this->db->where('uname',$name);
		$this->db->select('*');
		$query=$this->db->get('user');
		return $query->result();
	}

	function user_select_all()
	{
		$this->db->select('*');
		$query=$this->db->get('user');
		return $query->result();
	}

	function user_select_limit($start,$end)
	{
		$this->db->select('*');
		$this->db->limit($end,$start);
		$query=$this->db->get('user');
		return $query->result();
	}
}
?>

CI的Controller层:

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Login extends CI_Controller
{
	function index()
	{
		$this->load->helper('url');
		$this->load->view('jquery');
		
	}
	public function test()
	{
		echo '存在';
	}
	 public function get()
    {
	  $this->load->model("test_model");
	  $user = 
      $data['status'] = 'success'; // 成功的狀態
      $data['result'] = '我要的內容';
      
      echo json_encode($data);
    }
	function checklogin()
	{
		$this->load->model("test_m");
		$user=$this->test_m->user_select($_GET['uname']);       //这边一定要用Get
		if($user)
		{    
			 // echo '成功了';
			// var_dump($user);
			 $test = json_encode($user);
			 $callback = $_GET['callback'];   
			 echo $callback."($test)";
			 exit;
		}
		else
		{
				echo '没有成功,你不是会员';
		}
	}



}


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

跨域访问解决方法-jsonp

JSONP跨域访问数据传输

JSON(JavaScript Object Notation)和JSONP(JSON with Padding)虽然只有一个字母的差别,但其实他们根本不是一回事儿JSON是一种数据交换格式,而JSO...

JQuery+ajax+jsonp 跨域访问

Jsonp(JSON with Padding)是资料格式 json 的一种“使用模式”,可以让网页从别的网域获取资料。 一: 客户端代码 Insert title here ...

jsonp跨域访问

转载自:http://justcoding.iteye.com/blog/1366102 Asynchronous JavaScript and XML (Ajax ) 是驱动新一代...

jsonp跨域访问问题

1.先介绍一下“同源策略”这个概念 JavaScript是一种在Web开发中经常使用的前端动态脚本技术。在JavaScript中,有一个很重要的安全性限制,被称为“Same-Origin Polic...

关于jsonp实现跨域访问,以及存在的安全问题

关于jsonp实现跨域访问相关知识,请看某位大佬这篇博文,虽然是2012年写的老文章了,但是对于新手来说写滴是相当不错:深入浅出JSONP–解决ajax跨域问题

JQuery+Ajax+Jsonp 跨域访问

Jsonp(JSON with Padding)是资料格式 json 的一种“使用模式”,可以让网页从别的网域获取资料。关于Jsonp更详细的资料请参考http://baike.baidu.com/v...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)