Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/275.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
500内部服务器错误PHP脚本-尝试了大多数答案_Php_Fpdf - Fatal编程技术网

500内部服务器错误PHP脚本-尝试了大多数答案

500内部服务器错误PHP脚本-尝试了大多数答案,php,fpdf,Php,Fpdf,每当附加图片时,我的脚本似乎会返回500个错误,但是它会返回我想要的目录中的文件吗?我尝试了phpinfo()并在我的目录中放置了一个bespoke.user.ini,但仍然出现了错误。我用的是Godaddy&Plesk如果有用的话 <?php set_time_limit(0); ignore_user_abort(1); ini_set('memory_limit','512M'); require('fpdf/fpdf.php'); $pdf = new FPDF(); $pdf

每当附加图片时,我的脚本似乎会返回500个错误,但是它会返回我想要的目录中的文件吗?我尝试了phpinfo()并在我的目录中放置了一个bespoke.user.ini,但仍然出现了错误。我用的是Godaddy&Plesk如果有用的话

<?php

set_time_limit(0);
ignore_user_abort(1);
ini_set('memory_limit','512M');

require('fpdf/fpdf.php');
$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetFont('Helvetica','B',10);
$pdf->Image('some-url',10,10,50,50,'gif');
$pdf->SetXY(70,28);
$pdf->Cell(0,0,"Title",0,0,'C');
$pdf->SetXY(70,40);
$pdf->Cell(0,0,"Job Completion Certificate",0,0,'C');
$pdf->SetY(60);
$pdf->Write(14,$Data);
$pdf->SetY(225);
if(! empty($_POST["signature"])){
$pdf->Image($_POST["signature"],null,null,0,0,'png');
};
$pdf->AddPage('P','A4');

$allowedExts = array("gif", "jpeg", "jpg", "JPG", "JPEG", "PNG","png");
$pictures = array("file1", "file2", "file3");
$counter = 10;

foreach ($pictures as $value)
{
if ( ! empty($_FILES[$value]["tmp_name"])
&&($_FILES[$value]["size"] < 4000000)
&& in_array(end(explode(".", $_FILES[$value]["name"])), $allowedExts))
{
  move_uploaded_file($_FILES[$value]["tmp_name"],$_FILES[$value]["name"]);
  $pdf->Image($_FILES[$value]["name"],25,$counter,80,80);
  //unlink($_FILES["file"]["name"]);
  $counter += 90;
}
else
  {
  echo $value." is either Invalid or Not Attached<br>";
  };    
};
$pdf->Output($_POST["Customer"]."_".$_POST["Location"].'.pdf', 'F');

print "Data Written"; 

?>  

最后,我不得不将代码更改为以下代码:

...
foreach ($pictures as $value)
{
$temp = explode(".", $_FILES[$value]["name"]);
$extension = end($temp);    
if ( ! empty($_FILES[$value]["tmp_name"])
&&($_FILES[$value]["size"] < 4000000)
&& in_array($extension, $allowedExts))
{...
。。。
foreach(图片为$value)
{
$temp=explode(“.”,$\u文件[$value][“name”]);
$extension=end($temp);
如果(!空($\u文件[$value][“tmp\u名称”])
&&($_文件[$value][“size”]<4000000)
&&in_数组($extension$allowedExts))
{...

如果其他人在godaddy&plesk上遇到错误,请按照上面的链接,将web.config文件放在根文件夹和页面所在的文件夹中。一旦你看到问题所在,就更容易解决了!

PHP中的500错误意味着“查看错误日志”。错误的全部详细信息将在此处详细说明。始终在开发过程中,打开错误报告并在屏幕上显示错误。
错误报告(全部);ini设置(“显示错误”,1);
在运行时,或者在php.ini中设置它们。控制结构后面的分号不属于那里,但php不会被它们绊倒。@Paul Bentham您必须查阅主机的文档,以了解它们将日志存储在哪里。
错误报告需要一直向上。只需添加两个函数即可tion从我之前的评论中调用PHP脚本的顶部,然后运行它。由PHP引起的任何错误都将被写入屏幕。然后它可能是apache错误,比如.htaccess的问题。你需要找到错误日志并查看它。这不是PHP错误。看起来像Windows服务器?错误不明显-谷歌it看看你能得到什么
PHP Strict Standards:  Only variables should be passed by reference in G:\PleskVhosts\mysite\httpdocs\action.php on line 48
...
foreach ($pictures as $value)
{
$temp = explode(".", $_FILES[$value]["name"]);
$extension = end($temp);    
if ( ! empty($_FILES[$value]["tmp_name"])
&&($_FILES[$value]["size"] < 4000000)
&& in_array($extension, $allowedExts))
{...