Hello,
Following script is running fine with php7.4 but when I switch tp php8.2 it gives error “Image validation failed”.
Any idea what is wrong and where?
<?php
require "config.php";
$ver = "";
session_start(['img']);
$data_error = 1;
foreach ($_POST as $key => $val){
if($key=="email" && $val!=""){
$from=$val;
}
if($key=="redirect" && $val!=""){
$send_page=$val;
}
if($key=="subject" && $val!=""){
$subject=$val;
}
if ($key == "key") {
$sec_key = $val;
}
if($val!="Submit" && $key!="key" && $key!="B1" && $key!="PHPSESSID" && $key!="redirect" && $key!="required" && $key!="recipient" && $key!="subject"){
for ($i=0; $i < count($form_names); $i++) {
if ($form_names[$i] == $key && $val == ""){
$msg = "Sorry, $key $field_error";
error_alert($msg);
}
}
if($val!="" && $data_error=="1" && $key != "email" && $key != "key"){
$data_error = 0;
}
$msg = '';
$msg = "$msg $key : $val \n\n";
}
}
if ($img_validate == "1")
{
$sec_code = $_SESSION['sec_code'];
if (md5((int)$sec_key) != (int)$sec_code){
error_alert($image_error);
}
}
if(!preg_match ("/^([a-z0-9_]||\\.)+@(([a-z0-9_]|)+\\.)+[a-z]{2,4}$/", $from)){
$msg = "Sorry, $from $email_error";
error_alert($msg);
}
$id = "\n". $_SERVER['HTTP_USER_AGENT'] ."\n Client IP = ". $_SERVER['REMOTE_ADDR']."\n https://www.5starastrology.com/ $ver on ";
$admin = $_SERVER['SERVER_ADMIN'];
$submit_date = date('F j, Y, g:i a T');
$table_start = "";
$table_end = "";
if($data_error=="0"){
$_SESSION['sec_code'] = "NO";
$error="0";
$header = "From: <$from>\n";
$header .= "Return-path: <$from>\n";
$header .= "X-Sender-IP: " .$_SERVER['REMOTE_ADDR']."\n";
$header .= "X-Mailer: $ver \n";
$header .= "X-MailerWebSite: https://www.5starastrology.com/\n";
$body = "$table_start $msg $table_end $id $submit_date";
send_mail($mail_to, $subject, $body, $sec_local, $header);
if ($send_reply == "1") {
$fd=fopen("reply_email.txt","r");
while ($line=fgets($fd,1000))
{
$reply_email_body.=$line;
}
fclose ($fd);
if ($reply_email_form_name == ""){
$reply_email_form_name = $_SERVER['HTTP_HOST'];
}
$header = "From: $reply_email_form_name <$reply_email_from>\n";
$header .= "Return-path: <$reply_email_from>\n";
$header .= "X-Reply-To : <$reply_email_from>\n";
$header .= "X-Sender-IP: " .$_SERVER['REMOTE_ADDR']."\n";
$header .= "X-Mailer: $ver \n";
$header .= "X-MailerWebSite: https://www.5starastrology.com/\n";
$header .= "Content-Type: text/html; \n charset=iso-8859-1 \n";
$reply_email_body .= "<a href='https://www.5starastrology.com/'>$ver </a>";
send_mail($from, $reply_email_subject, $reply_email_body, $sec_local, $header);
}
}
else {
error_alert($blank_error);
$error="1";
}
if ($error_repote=="0") {
if($error=="0"){
header ("Location: $send_page");
}
else {
header ("Location: $error_page");
}
}
else {
if($error=="0"){
disply_error_msg($ok_msg);
}
else {
disply_error_msg($error_msg);
}
}
function error_alert($msg){
$_SESSION['sec_code'] = "NO";
print "<SCRIPT>";
print "alert ('$msg');";
print "history.go(-1);";
print "</SCRIPT>";
die("$msg");
}
function disply_error_msg($msg) {
echo "$msg";
echo "<a href=javascript:history.go(-1)>Click here to Go Back.</a>";
die();
}
function send_mail($mail_to, $subject, $msg, $sec_local, $header){
if ($sec_local == md5((int)$_SERVER['SERVER_SIGNATURE'] + (int)$_SERVER['HTTP_USER_AGENT'])){
mail($mail_to, $subject, $msg, $header);
$_SESSION['sec_code'] = "NO";
}
else
{
die("Bad Submit");
}
}
header("location: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=".$_POST['item']);
Thanks for all the inputs in advance.
Best regards to all of you to help me.
Arun