Utknąłem z problemem wysyłania wiadomości ze skryptu PHP. Niektóre dane:Debugowanie PHP Mail() i/lub PHPMailer
- Shared hosting, bez dostępu SSH, tylko gospodarzem panelu operatora
- wersja PHP 5.2.5
- ubiegłym roku wybudowany teren, który nie miał problemów z wysyłaniem poczty z tym samym gospodarzem
- Załóżmy, że domena to "domena.com", a mój prywatny adres to "[email protected]" ze względu na anonimowość w poniższym kodzie.
Oto kod:
<?php
error_reporting(E_ALL);
ini_set("display_errors", 1);
$to = "[email protected]";
$subject = "Hi";
$body = "Test 1\nTest 2\nTest 3";
$headers = 'From: [email protected]' . "\r\n" .
'errors-to: [email protected]' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
if (mail($to, $subject, $body, $headers)) {
echo("Message successfully sent");
} else {
echo("Message sending failed");
}
require('class.phpmailer.php');
$message = "Hello world";
$mail = new PHPMailer();
$mail->CharSet = "UTF-8";
$mail->AddAddress("[email protected]", "Agos");
$mail->SetFrom("[email protected]","My Site");
$mail->Subject = "Test Message";
$mail->Body = $message;
$mail->Send();
?>
A oto co mam:
Message sending failed Could not instantiate mail function.
Która jest zaskakujący do powiedzenia najmniej. Czy jest coś, co mogę zrobić, aby uzyskać co najmniej bardziej znaczące błędy? Dlaczego kod z klasy pojawia się w moim pliku?
Fatal error: Class 'PHPMailer' nie znaleziono w /mailtest.php na linii 20 ? co jest w linii 20? –
@Mihai linia 20 to $ mail = new PHPMailer(); – Agos