preg_match("/[\]/",'',$body);
I use preg_match but I have this error here
Compilation failed: missing terminating ] for character class at offset 3
What’s wrong here I can’t find it
$email_message = "Form details below.\n\n";
function clean_string($string) {
$bad = array("content-type","bcc:","to:","cc:","href");
return str_replace($bad,"",$string);
}
$email_message .= "Full Name: ".clean_string($_POST['full_name'])."\n";
$email_message .= "Email: ".clean_string($_POST['email'])."\n";
$email_message .= "Telephone number: ".clean_string($_POST['telephone'])."\n";
$email_message .= "Message: ".clean_string($_POST['comments'])."\n";
$mail = new PHPMailer();
$body = $email_message;
$body = str_replace('\\', '', $body);
$mail->IsSMTP(); // telling the class to use SMTP
$mail->SMTPAuth = true; // enable SMTP authentication
$mail->SMTPSecure = "ssl"; // sets the prefix to the servier
$mail->Host = "smtp.gmail.com"; // sets GMAIL as the SMTP server
$mail->Port = 465; // set the SMTP port for the GMAIL server
$mail->Username = "hanem@gmail.com"; // GMAIL username
$mail->Password = "hinadk"; // GMAIL password
$mail->SetFrom('from-email@domain.com', 'First Last');
$mail->Subject = "Imperia";
$mail->AltBody = "To view the message, please use an HTML compatidble email viewer!"; // optional, comment out and test
$mail->MsgHTML($body);
$address = "hanem@gmail.com";
$mail->AddAddress($address, "To Name");
if(!$mail->Send()) {
echo "<font color='red'> Message error </font>". $mail->ErrorInfo;
} else {
echo "<font color='red'> Message sent </font>";
}
there was eregi_replace(“[]”,”,$body);
but I had a another error for that reason i change it to preg_match
You’re escaping the last bracket but not the first. To match backslash, you can do:
From your edit, it appears you’re trying to remove backslashes from
$body. In this case, you would need to use preg_replace. However, since your doing a simple search and replace, you’d be better off just using str_replace: