Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]
Forum PHP.pl > Forum > Przedszkole
piesdoroty
na stronie mam zamieszczony plik php (rezerwacja), po weryfikacji danych wyskakuje mi komunikat błędu: Warning: mail() [function.mail]: Bad parameters to mail() function, mail not sent. in /rezerwacja.php on line 445

Dziękujemy za dokonanie rezerwacji!
Rezerwacja zostanie potwierdzona droga e-mailową.
Po przejsciu w dreamweaverze do linijki 445 zmieniam wartości,ale nie mogę dojść do wniosku, co jest przyczyną błędu. Proszę o pomoc, i dziękuję z góry.

mls
Może łaskawie jeszcze pokaż jak wygląda owa linia nr 445...
grzana12
Wrzuć fragment kodu który to wykonuje!
piesdoroty
mail($recipient,$mailtitle,$message,$headers);

to linia 445
Fifi209
Nie no walnę zaraz. Pokaż troszkę więcej tych linii może?

Może powiedz co tam przekazujesz w parametrach ?
piesdoroty
$recipient='rezerwacja@zhonghua.com.pl';
//$recipient='admin@vanet.pl';
$headers.='From: Rezerwacja <rezerwacja@zhonghua.com.pl>'."\n";
$headers.='X-sender: Rezerwacja <rezerwacja@zhonghua.com.pl>'."\n";
$headers.='Return-path: Rezerwacja <rezerwacja@zhonghua.com.pl>'."\n";
//$headers.='Bcc: GV <info@vanet.pl>'."\n";
$headers.="X-mailer: PHP\n";
$mailtitle="[zhonghua.com.pl] Rezerwacja!\n";
$headers.="Content-Type: text/plain; charset=\"iso-8859-2\"\n";

$message.="Imię i Nazwisko: $nazwa\n";
$message.="Firma: $firma\n";
$message.="Data przyjazdu: $data_przyjazdu\n";
$message.="Data odjazdu: $data_odjazdu\n";
$message.="Ilość osób: $ilosc_osob\n";
$message.="Ilość pokoi: $ilosc_pokoi\n";
$message.="Ilość apartamentów: $ilosc_apartamentow\n";
$message.="Telefon: $telefon\n";
$message.="Fax: $fax\n";
$message.="Email: $email\n";
$message.="Uwagi: $uwagi\n";
$message.="--\n";
$message.="wiadomosc wygenerowano na stronie [www.zhonghua.com.pl]\n";
mail($recipient,$mailtitle,$message,$headers);
grzana12
może najpierw sprawdź co zwraca funkcja mail oraz zrób var_dump-a zmiennych przekazywanych jako parametry
piesdoroty
zwraca: Warning: mail() [function.mail]: Bad parameters to mail() function, mail not sent. in /rezerwacja.php on line 445

a var-dump co zmieni? i jak to działa?
grzana12
zapisz to tak:
  1. <?php
  2. var_dump($recipient);
  3. var_dump($mailtitle);
  4. var_dump(message);
  5. var_dump(headers);
  6. var_dump(mail($recipient, $mailtitle, $message, $headers));
  7. ?>


I wklej wynik
piotrooo89
Niektóre z serwerów potrzebują zwrótu karetki \r i nowego wiersza \n w nagłówkach. http://olaszewski.com/2009/02/01/mail-w-php/

choć jesto strzelanie na ślepo.
kamil4u
Oczywiście masz gdzieś zapis w stylu:
Kod
$message = '';


Bo nie możesz dodać czegoś do zmiennej, która nie istnieje tongue.gif
piotrooo89
Cytat(kamil4u @ 29.03.2009, 16:06:37 ) *
Bo nie możesz dodać czegoś do zmiennej, która nie istnieje tongue.gif

he?


  1. <?php
  2. $a .= 'test';
  3. $a .= ' i znów to samo';
  4.  
  5. echo $a;
  6. ?>


przetestuj sobie.
kamil4u
He smile.gif sorry - stanowczo za dużo JS tongue.gif
piesdoroty
Cytat(grzana12 @ 29.03.2009, 15:31:46 ) *
zapisz to tak:
  1. <?php
  2. var_dump($recipient);
  3. var_dump($mailtitle);
  4. var_dump(message);
  5. var_dump(headers);
  6. var_dump(mail($recipient, $mailtitle, $message, $headers));
  7. ?>


I wklej wynik


wklejam wynik i na stronie pojawia mi sie po wcisnieciu kalwisza: rezerwuj komunikat i nie wiem skąd informacja:


REZERWACJA

connect($sql_hostname,$sql_username,$sql_password); $db->selectdb($sql_database); require("./admin/modules/subskrypcje/phpmailer/class.phpmailer.php"); $db->query("INSERT INTO `rezerwacje` (nazwa,firma,data_przyjazdu,data_odjazdu,ilosc_osob,ilosc_pokojow,ilosc_apartame
tow,telefon,fax,email,uwagi,data_wpisu) VALUES ('$nazwa','$firma','$data_przyjazdu','$data_odjazdu','$ilosc_osob','$ilosc_pokoi','$ilosc_apartamentow','$telefon','$fax','$email','$uwagi',NOW())"); if ($email && eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $email)) { $mail = new PHPMailer(); $mail->SetLanguage("en", "/admin/modules/subskrypcje/phpmailer/language/"); $mail->IsSMTP(); // send via SMTP $mail->Host = "hotelchinski.home.pl"; // SMTP servers $mail->SMTPAuth = true; // turn on SMTP authentication $mail->Username = "hotelchinski"; // SMTP username $mail->Password = "zhonghua"; // SMTP password $mail->From = "rezerwacje@zhonghua.com.pl"; $mail->FromName = "ZhongHua Hotel"; $mail->Encoding = "8bit"; $mail->AddReplyTo("rezerwacje@zhonghua.com.pl","ZhongHua Hotel"); $mail->CharSet = "iso-8859-2"; $mail->IsHTML(true); // send as HTML $mail->Timeout = 45; $tytul="[zhonghua.com.pl] Rezerwacja!"; $tresc=<<

Prosimy oczekiwać kontaktu telefonicznego z naszej strony w celu potwierdzenia zgodności danych.

Imię i Nazwisko: $nazwa
Firma: $firma
Data przyjazdu: $data_przyjazdu
Data odjazdu: $data_odjazdu
Ilość osób: $ilosc_osob
Ilość pokoi: $ilosc_pokoi
Ilość apartamentów: $ilosc_apartamentow
Telefon: $telefon
Fax: $fax
Email: $email
Uwagi: $uwagi
EOF; $filename="./mailing/formantka.html"; $fp = fopen ($filename, "r"); $body = fread ($fp, filesize ($filename)); fclose ($fp); $trescok = str_replace("{TRESC}",$tresc,$body); $trescok = str_replace("{TYTUL}",$tytul,$trescok); $trescok = str_replace("{WYPISZ}","",$trescok); $trescok=str_replace("{EMAIL}",$email,$trescok); $mail->AddAddress($email); $mail->Subject = $tytul; $mail->Body = $trescok; //$mail->AltBody = "This is the text-only body"; //if (!$mail->Send()) echo $mail->ErrorInfo; $mail->Send(); } $recipient='rezerwacja@zhonghua.com.pl'; //$recipient='admin@vanet.pl'; $headers.='From: Rezerwacja '."\n"; $headers.='X-sender: Rezerwacja '."\n"; $headers.='Return-path: Rezerwacja '."\n"; //$headers.='Bcc: GV '."\n"; $headers.="X-mailer: PHP\n"; $mailtitle="[zhonghua.com.pl] Rezerwacja!\n"; $headers.="Content-Type: text/plain; charset=\"iso-8859-2\"\n"; $message.="Imię i Nazwisko: $nazwa\n"; $message.="Firma: $firma\n"; $message.="Data przyjazdu: $data_przyjazdu\n"; $message.="Data odjazdu: $data_odjazdu\n"; $message.="Ilość osób: $ilosc_osob\n"; $message.="Ilość pokoi: $ilosc_pokoi\n"; $message.="Ilość apartamentów: $ilosc_apartamentow\n"; $message.="Telefon: $telefon\n"; $message.="Fax: $fax\n"; $message.="Email: $email\n"; $message.="Uwagi: $uwagi\n"; $message.="--\n"; $message.="wiadomosc wygenerowano na stronie [www.zhonghua.com.pl]\n"; mail($recipient,$mailtitle,$message,$headers); ?>
Dziękujemy za dokonanie rezerwacji!
Rezerwacja zostanie potwierdzona droga e-mailową.

function checkForm() { error=''; if (document.form.nazwa.value==''&&document.form.firma.value=='') { error="Podaj 'Imię i Nazwisko' lub 'Nazwę firmy'!"; } else { if (document.form.data_przyjazdu.value==''||document.form.data_odjazdu.value=='') { error="Podaj 'Datę przyjazdu' i 'Datę wyjazdu'!"; } else { if (document.form.ilosc_osob.value=='') { error="Podaj 'Ilość osób!"; } else { if (document.form.ilosc_pokoi.value=='') { error="Podaj 'Ilość pokoi'!"; } else { if (document.form.telefon.value==''&&document.form.email.value=='') { error="Podaj 'Telefon' lub 'Adres Email'!"; } } } } } if (!error) { document.form.submit(); } else { alert(""+error+""); return false; } } Aby zarezerwować pokój, prosimy o skorzystanie z poniższego formularza. Kiedy zgłoszenie dotrze do nas, postaramy się jak najszybciej z Państwem skontaktować w celu potwierdzenia rezerwacji.




czy możliwe, ze jest to jakiś błąd sieciowy między komuterami w hotelu, odkąd administruję stronę kompletnie nie zmieniałem rezerwacji.php, możliwe, że poprzez modyfikację jpg-ów na stronie rezerwacja się "przekręciła"?
piotrooo89
a powiedz mi skąd pobierasz te dane? z formularza bo jeśli tak to poczytaj o register_globals.
piesdoroty
te dane wyskakują po weryfikacji daty przyjazdu, po wcisnieciu przycisku"rezerwuj", centarlnie na stronie, pod nia jest tabelka z imieniem, nazwiskiem...itd, w niej tez są jakieś śmieci
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.