2013-07-30 76 views
1

而不是使用输入隐藏字段,我建立一个查询传递变量IPN:错误使用500脚本执行失败头()

$query="cmd=_xclick&business=PAYPALKONTO-EMAIL&notify_url=http://IPNURL/ipn.php&return=http://ZURÜCKurlWENNbezahlt.de& 
    cancel_return=http:/ZURÜCKurlWENNangebrochen.de&lc=DE&currency_code=EUR&custom=WERSTECKTEinformationenDIEmitGESENDETwerdenABERkeinerSIEHTzbPREISidODERnichts& 
    item_name=Artikel&amount='".str_replace(",", ".", $_SESSION['1'])."'"; 

    ob_end_clean(); 
    header("Location: https://www.sandbox.paypal.com/cgi-bin/webscr?".utf8_decode($query)); 
    exit; 

但是,当我点击提交,它停留在同一页面并获得Error:500 "script execution failure"这是为什么?我该如何解决这个错误?

+1

很有可能您的代码有错误,请检查服务器错误日志以获取更多信息 – Orangepill

+0

尝试使用'http_build_query'构建查询,而不是自己构建字符串 - 可能存在编码问题。 – jterry

+0

为什么utf8_decode的字符串看起来并不需要它? –

回答

0

检查您的服务器日志是否有确切的错误(或在您的php.ini中切换错误报告以查看浏览器中的错误消息)。

然而,如果误差与header()功能,那么原因几乎总是因为你已经派出一些其他的输出到浏览器第一 - header()必须叫你的任何页面主体的发送前。

如果您认为自己并未发送任何内容,则可能是您在一个(或多个)PHP文件的开始或结尾无意中遗留的空白区域。

相关问题