При переходе на php 7.0 и выше. Возникает проблемка...
Добрый день! Может кто сможет подсказать! На сайте есть калькулятор и при переходе на php 7.0 выскакивает ошибка, (Failed to load resource: the server responded with a status of 500 (Internal Server Error) /assets/new/calc/calc.php?format=json что нужно подправить? Или все сложно? На php 5.6 работает в нормальном режиме.
Спасибо ))
<?php
include( 'reader.php' );
error_reporting(-1);
function load_price($fname){
//if (strpos($fname,".csv")===false) return false;
$reader =& new CSVReader( new FileReader( $fname ) );
$reader->setSeparator( ';' );
$data_result=array();
$data=array();
$cell = $reader->next();
while (false != ( $cell = $reader->next() )){
if (($cell[0]!='[DELIVERY]') && ($cell[0]!='[WORKS]')) {
$s='materials';
while(($cell[0]!="") && ($cell != false) && ($cell[0][0]!='[')){
$data['name']=iconv('windows-1251', 'UTF-8', $cell[0]);
$data['units']=iconv('windows-1251', 'UTF-8', $cell[1]);
$data['weight']=($cell[2]=="")?0:str_replace(',','.',$cell[2]);
$data['price']=($cell[3]=="")?0:str_replace(',','.',$cell[3]);
$data['percent']=($cell[4]=="")?0:str_replace(',','.',$cell[4]);
$data['consumption']=str_replace(',','.',$cell[5]);
//$data['consumption']=($cell[5]=="")?0:str_replace(',','.',$cell[5]);
$data_result[$s][]=$data;
$data=array();
$cell = $reader->next();
}
}
if (($cell[0]=='[DELIVERY]') || ($cell[0]=='[WORKS]')) {
$s='delivery';
if ($cell[0]=='[WORKS]') $s='works';
$cell = $reader->next();
while(($cell[0]!="") && ($cell != false) && ($cell[0][0]!='[')){
$data['name']=iconv('windows-1251', 'UTF-8', $cell[0]);
$data['price']=($cell[1]=="")?0:str_replace(',','.',$cell[1]);
$data_result[$s][]=$data;
$data=array();
$cell = $reader->next();
}
}
}
return $data_result;
}
function send_mail(){
$mess = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>Заявка</title></head><body>';
$mess .= '<strong>Имя: </strong>'.$_POST['name']."<br />\r\n";
$mess .= '<strong>E-Mail: </strong>'.$_POST['email']."<br />\r\n";
$mess .= '<strong>Телефон: </strong>'.$_POST['phone']."<br />\r\n";
$mess .= '<strong>Адрес объекта: </strong>'.$_POST['address']."<br /><br />\r\n\r\n";
$str = stripslashes($_POST['data']);
$str = str_replace('script','div',$str);
$mess .= '<div>'.$str."</div><br />\r\n </body></html>";
require 'class.phpmailer.php';
////////////
file_put_contents('_tmp.html',$mess);
////////////
$mail = new PHPMailer();
$mail->From = 'info@styazhka-pola.ru';
$mail->FromName = 'BEST FLOORS';
//$mail->AddBCC($_POST['email'], $_POST['name']);
$mail->AddAddress($_POST['email'], $_POST['name']);
$mail->AddAddress('email@my_site.ru','');
$mail->AddBCC('styazhkapola@yandex.ru','');
$mail->IsHTML(true);
$mail->CharSet = "utf-8";
$mail->Subject = 'Спасибо. Ваш расчет c калькулятора на сайте Best Floor';
$mail->Body = $mess;
if($sendemail != 'No'){
if (!$mail->Send()) {
$data['message']='<b>Произошла ошибка.</b> '.' Mailer Error: '.$mail->ErrorInfo;
$data['success']=false;
echo json_encode($data);
die;
}
}
header('Content-Type:text/html; charset=utf-8');
header('Access-Control-Allow-Origin: *');
$data['message']='Спасибо! <br />Ваша заявка успешно отправлена, в самое ближайшее время мы с Вами свяжемся!';
$data['success']=true;
echo json_encode($data);
die;
}
if (!empty($_POST['name'])) {
send_mail();
die;
}
$res=load_price('prices.csv');
//header('Access-Control-Allow-Origin: *');
echo json_encode($res);
die;
?>