求php高手帮忙看看tracking代码怎么改,头疼
有些联盟只允许填入一个tracker的post back url,这对于同时使用好几个tracker的话实在是不方便,因此我想使用中转的办法,一个中转服务器收到联盟的postback url,然后再把track.php?subid=XXXX(以imobitrax为例)转发到其它几个tracker上,自己捣鼓了一下没成功,有人帮忙看看问题在哪吗?<?php $subid=$_POST["subid"]; ?>
<?php
function send_post($url, $post_data) {
$postdata = http_build_query($post_data);
$options = array(
'http' => array(
'method' => 'POST',
'header' => 'Content-type:application/x-www-form-urlencoded',
'content' => $postdata,
'timeout' => 15 * 60 // 超时时间(单位:s)
)
);
$context = stream_context_create($options);
$result = file_get_contents($url, false, $context);
return $result;
}
//使用方法
$post_data = array(
'subid' => $subid
);
send_post('http://1.com/track.php', $post_data);
send_post('http://2.com/track.php', $post_data);
send_post('http://3.com/track.php', $post_data);
send_post('http://4.com/track.php', $post_data);
?>
比如以上这段存为,trackredirect.php ,联盟那里call back url 填入 xxx.com/trackredirect.php?subid={subid},但是我测试了,不工作呢,好头痛,求专业人士帮忙看看哈
既然数据在url里,那么subid获取方式应该是$_GET,其它没细看。 z070477 发表于 2017-12-3 16:28
既然数据在url里,那么subid获取方式应该是$_GET,其它没细看。
是的,解决!,估计有的联盟是post back ,有的联盟是get 方式call back, 设置一个条件语句 _post 为空的话就用 _get,完美解决
320982144 脸书付费推广交流群,请理解一个煞费苦心的群主。 1.大部分POST BACK 接口都是以GET方式提交的,不需要POST
2.你这个代码没考虑HTTPS
页:
[1]