jsonp跨域

我是做的一个跨站显示信息!!

鄙人文化不高,代码不严谨,仅供参考!

题目:用户在a站访问过的商品足迹可以在登录b站之后查看足迹!

首先创建两个域名www.a.com/www.b.com

他们分别访问a站以及b站

a站:创建php文件

shop.php


<?php
header("content-type:text/html;charset=utf8");
$pdo=new PDO('mysql:host=localhost;dbname=item',"root","root");
$pdo->exec('set names utf8');
$sql="select * from goods";
$list=$pdo->query($sql)->fetchAll(PDO::FETCH_ASSOC);

?>
<table>
   <tr>
      <td>ID</td>
      <td>名称</td>
      <td>介绍</td>
   </tr>
   <?php foreach ($list as $key => $val) {?>

   <tr>
      <td><?php echo $val['goods_id']?></td>
      <td><a href="goods.php?goods_id=<?php echo $val['goods_id']?>"><?php echo $val['goods_name']?></a></td>
      <td><?php echo $val['goods_desc']?></td>
   </tr>
   <?php }?>
</table>

goods.php

<?php 
header("content-type:text/html;charset=utf8");
$goods_id=$_GET['goods_id'];
if (isset($_COOKIE['goods_id'])) {
   $str=$_COOKIE['goods_id'];
   $data=unserialize($str);
   $data[]=$goods_id;
   setcookie("goods_id",serialize($data));
}else{
   $data=array();
   $data[]=$goods_id;
   setcookie("goods_id",serialize($data));
}

$pdo=new PDO('mysql:host=localhost;dbname=item',"root","root");
$pdo->exec('set names utf8');
$sql="select * from goods where goods_id=$goods_id";
$goods=$pdo->query($sql)->fetch(PDO::FETCH_ASSOC);
//var_dump($goods);

?>
<h3><?php echo $goods['goods_name']?></h3>
<p><?php echo $goods['goods_desc']?></p>

callback.php


<?php 
//header("content-type:text/html;charset=utf8");
$pdo=new PDO('mysql:host=localhost;dbname=item',"root","root");
$pdo->exec('set names utf8');
//接callback
$callback=$_GET['callback'];
//echo $callback;die;
//查询数据
if (isset($_COOKIE['goods_id'])) {
   
   //查询cookie
   $data=unserialize($_COOKIE['goods_id']);
   $str=implode(",", $data);
   $sql="select goods_name,goods_id,goods_desc from goods where goods_id in ($str)";
    //print_r($sql);die;
   $list=$pdo->query($sql)->fetchAll(PDO::FETCH_ASSOC);

}else{
   //查询数据库点击量
   $sql="select goods_name,goods_id,goods_desc from goods order by click_count  desc limit 5";
   $list=$pdo->query($sql)->fetchAll(PDO::FETCH_ASSOC);
   
}
$str=json_encode($list);
echo $callback."(".$str.")";
?>

b站

news1.php


<?php 
//header("content-type:text/html;charset=utf8");
$pdo=new PDO('mysql:host=localhost;dbname=item',"root","root");
$pdo->exec('set names utf8');
//接callback
$callback=$_GET['callback'];
//echo $callback;die;
//查询数据
if (isset($_COOKIE['goods_id'])) {
   
   //查询cookie
   $data=unserialize($_COOKIE['goods_id']);
   $str=implode(",", $data);
   $sql="select goods_name,goods_id,goods_desc from goods where goods_id in ($str)";
    //print_r($sql);die;
   $list=$pdo->query($sql)->fetchAll(PDO::FETCH_ASSOC);

}else{
   //查询数据库点击量
   $sql="select goods_name,goods_id,goods_desc from goods order by click_count  desc limit 5";
   $list=$pdo->query($sql)->fetchAll(PDO::FETCH_ASSOC);
   
}
$str=json_encode($list);
echo $callback."(".$str.")";
?>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值