错误500使用header()执行脚本失败


Error 500 script execution failure using header()

我没有使用输入隐藏字段,而是构建了一个将变量传递给ipn:的查询

  $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"为什么是这样?如何修复此错误?

检查服务器日志以查找确切的错误(或者在php.ini中打开错误报告以在浏览器中查看错误消息)。

但是,如果错误是由header()函数引起的,那么原因几乎总是因为您已经先向浏览器发送了一些其他输出——在发送任何页面正文之前,必须调用header()

如果你认为你没有发送任何内容,它可能是你无意中在一个(或多个)PHP文件的开头或结尾留下的空白。