Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: e-mail z załącznikiem z serwera
Forum PHP.pl > Forum > PHP
hunter209
Czy można za pomocą php napisać skrypt, który wysyłałby plik z serwera na moj e-mail?

Chodzi mi o to, że gdy robię backupa bazy zapisuje mi plik na serwerze, ale backupa robię bardzo często, a rzadko go wgrywam tongue.gif Dlatego po każdym backupie muszę, się łączyć z serwerem FTP i ściągać baze na dysk. Dużo wygodniej by było, gdybym miał 2 skrypt, kóry wysyła ten backip na e-mail smile.gif

Jeśli podobny temat był na forum, to bardzo przepraszam, prosze mnie tam przekierować, szukałem, ale zupełnie nie wiem jakie wipisać słowa kluczowe do wyszukiwarki sciana.gif
wookieb
Można. Za pomoca phpmailer wyślesz załączniki. A za pomoca crona uruchomisz skrypt co pewien czas.
A "Zloncznik" to sobie możesz....
hunter209
no dobra, skrypt ściągnięty i już jest na serwerze. Teraz kod php:

Kod
<?
require("class.phpmailer.php");
$mail = new PHPMailer();

$mail->PluginDir = "phpmailer/";
$mail->From = "zador23@interia.eu "; //adres naszego konta
$mail->FromName = "phpMailer tester";//naglówek From
$mail->Host = "poczta.interia.pl ";//adres serwera SMTP
$mail->Mailer = "smtp";
$mail->Username = "zador23 ";//nazwa uzytkownika
$mail->Password = "moje haslo";//nasze haslo do konta SMTP
$mail->SMTPAuth = false;
$mail->SetLanguage("pl", "phpmailer/language/");

$mail->Subject = "BDU backup";//temat maila

// w zmienna $text_body wpisujemy tresc maila
$text_body = "Czesc, chyba phpMailer dziala \n\n";
$text_body .= "Na zawsze Twój, \n";
$text_body .= "PHPMailer";

$mail->Body = $text_body;
// adresatów dodajemy poprzez metode 'AddAddress'
$mail->AddAddress("hunter209@gmail.com","Rafcio");

if(!$mail->Send())
echo "Kicha, nie powiodo sie
";
echo $mail->ErrorInfo."
";

// Clear all addresses and attachments
$mail->ClearAddresses();
$mail->ClearAttachments();
echo "mail sent
";

?>


Zapisane jako e-mail.php

Odpalam i nic :| http://bdu-u53.cba.pl/phpMailer/e-mail.php

żadnego maila nie dostaję. Chyba powinienem dostać wiadomość: "Czesc, chyba phpMailer dziala \n\n"
wookieb
Kod
$mail->SMTPAuth =true;


Kod
if(!$mail->Send())
{
echo "Kicha, nie powiodo sie";
echo $mail->ErrorInfo;
}

Powiedz czy bedzie bład.
hunter209
No więc małe zmiany:

Kod
<?php
require("phpmailer/class.phpmailer.php");
$mail = new PHPMailer();

$mail->PluginDir = "phpmailer/";
$mail->From = "Hunter.pl209@gmail.com"; //adres naszego konta
$mail->FromName = "Backup";//naglówek From
$mail->Host = "smtp.gmail.com";//adres serwera SMTP
$mail->Mailer = "smtp";
$mail->Username = "hunter.pl209";//nazwa uzytkownika
$mail->Password = "haslo";//nasze haslo do konta SMTP
$mail->SMTPAuth = true;
$mail->SetLanguage("en", "phpmailer/language/");

$mail->Subject = "Backup BDU";//temat maila

// w zmienna $text_body wpisujemy tresc maila
$text_body = "Czesc, chyba phpMailer dziala \n\n";
$text_body .= "Na zawsze Twoj, \n";
$text_body .= "PHPMailer";

$mail->Body = $text_body;
// adresatów dodajemy poprzez metode 'AddAddress'
$mail->AddAddress("hunter209@gmail.com","Raf");


if(!$mail->Send())
{
echo "Kicha, nie powiodo sie";
echo $mail->ErrorInfo;
}

// Clear all addresses and attachments
$mail->ClearAddresses();
$mail->ClearAttachments();
echo "mail sent
";

?>


Próbowałem na interi, wp i jak widac na google, zawsze ten am błąd:

Cytat
SMTP Error: Could not connect to SMTP host.mail sent


Wychodzi na to, ze SMTP źle podane, lecz jak widać wpiąłem poprawnie... sadsmiley02.gif
wookieb
Posprawdzaj ustawienia serwera co do smtp. Potem google -> i wyszukaj info o błędzie na ten temat w phpmailerze.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.