gpt4 book ai didi

php - Paypal ipn 监听器 feof() : 30 is not a valid stream resource

转载 作者:太空宇宙 更新时间:2023-11-03 16:34:21 25 4
gpt4 key购买 nike

我有一个用 php 编写的 paypal IPN 监听器脚本导致错误,它很快就会填满我的日志文件并使服务器崩溃。

错误是:listener feof(): 30 不是有效的流资源

我到处寻找 Paypal IPN 监听器的最新示例,但似乎 Paypal 无法提供这样的示例。

这是我的代码:

$req = 'cmd=_notify-validate';
foreach ($_POST as $key => $value) {
$value = urlencode(stripslashes($value));
$req .= "&$key=$value";
}
// Post back to PayPal to validate
$server = "ssl://www.paypal.com";
$port = 443;
$timeout = 30;

$header = "POST /cgi-bin/webscr HTTP/1.1\r\n";
$header .= "Content-Type: application/x-www-form-urlencoded\r\n";
$header .= "Host: www.paypal.com\r\n"; // www.paypal.com for a live site
$header .= "Content-Length: " . strlen($req) . "\r\n\r\n";



$fp = fsockopen($server, $port, $errno, $errstr, $timeout);
$payment_status = $_POST['payment_status'];
$custom = $_POST["custom"];
$txn_type = $_POST["txn_type"];

// Process validation from PayPal
if (!$fp) {

//error
echo "HTTP ERROR";

} else {

// NO HTTP ERROR
fputs($fp, $header . $req);

while (!feof($fp)) {
$res = trim(fgets ($fp, 1024));
if (strcmp($res, "VERIFIED") == 0) {

if ($payment_status == "Completed")
{
//code to update database here
}
}
}
}

有什么想法吗?

最佳答案

我的天啊...这就是您拥有 cURL 的原因!

VerifyIPN() on GitHub

附言:请我喝一杯!

关于php - Paypal ipn 监听器 feof() : 30 is not a valid stream resource,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17547798/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com