| Autor |
Wiadomość |
goldenhand
Jestem tu już dłuższą chwilę


Dołączył: 02 Sie, 2008
Posty: 114
Status: Offline
|
| Wysłany:
28.12.2009 14:26 |
|
Witam,
Chciałbym żeby po wysłaniu formularza otwierała się inna strona (strona z podziękowaniem).
Chciałem w skrypcie użyć czegoś takiego:
Kod:
$redirectURL = "http://www.costam.pl/kontakt/index.html";
Ale nie wiem gdzie to umieścić żeby zadziałało, może podam kod php formularza:
Kod:
<?php
if(isset($_POST['send'])){
$emailFrom = "costam@wp.pl";
$emailTo = "costam@wp.pl";
$subject = "Wiadomosc do costam";
$name = strip_tags($_POST['name']);
$nazwisko = strip_tags($_POST['nazwisko']);
$ulica = strip_tags($_POST['ulica']);
$city = strip_tags($_POST['city']);
$email = strip_tags($_POST['email']);
$kod = strip_tags($_POST['kod']);
$tel = strip_tags($_POST['tel']);
$message = strip_tags(stripslashes($_POST['message']));
$body = "Name: ".$name."\n";
$body .= "Nazwisko: ".$nazwisko."\n";
$body .= "Ulica: ".$ulica."\n";
$body .= "City: ".$city."\n";
$body .= "Email: ".$email."\n";
$body .= "Kod poczt: ".$kod."\n";
$body .= "Telefon: ".$tel."\n";
$body .= "Message: ".$message."\n";
$headers = "From: ".$emailFrom."\n";
$headers .= "Reply-To:".$email."\n";
$success = mail($emailTo, $subject, $body, $headers);
if ($success){
echo '<p class="feedback ok">Dziękujemy, wiadomość została wysłana.</p>';
}
else{
echo '<p class="feedback nook">Coś jest nie wporządku, sprawdź wpisane dane.</p>';
}
;}
?>
|
|
|
|
 |
januzi
Mega GURU


Dołączył: 18 Paź, 2002
Posty: 1452
Status: Offline
|
| Wysłany:
29.12.2009 02:45 |
|
przy prawidłowym warunku
Kod:
header( "Location: $adres" ) ;
exit() ;
|
|
|
|
 |
goldenhand
Jestem tu już dłuższą chwilę


Dołączył: 02 Sie, 2008
Posty: 114
Status: Offline
|
| Wysłany:
29.12.2009 13:30 |
|
Dzięki Januzi znowu mi skórę ratujesz
Coś mi z tym świtało, ale nie wiem dalej gdzie to umieścić, ponieważ jak wysyłam, to wyskakuje na białej stronie to:
Kod:
if ($success){
echo '<p class="feedback ok">Dziękujemy, wiadomość została wysłana.</p>';
}
else{
echo '<p class="feedback nook">Coś jest nie w porządku, sprawdź wpisane dane.</p>';
}
Powiedzmy że w ogóle tego nie chcę więc to usuwam i teraz będzie tak:
Kod:
if ($success){
header( "Location: $adres" );
exit();
}
Kod:
$adres .="http://www.costam.pl/index.htm";
Jest ok teraz??? |
|
|
|
 |
goldenhand
Jestem tu już dłuższą chwilę


Dołączył: 02 Sie, 2008
Posty: 114
Status: Offline
|
| Wysłany:
02.01.2010 12:47 |
|
No dobra chociaż nie bardzo rozumiem ten język to jednak udało się mi wykonać to co chciałem, ale w jeszcze inny sposób.
Formularz , który był zawarty w pliku htm potrzebował zewnętrznego skryptu, który go przetworzy - w wyniku czego pojawiał się komunikat o sukcesie na białej stronie.
Zrobiłem zatem tak, skrypt php umieściłem w pliku htm zaraz nad formularzem, potem zamieniłem:
Kod:
form action="/kontakt/index.php"
na
Kod:
form action="<?php echo $_SERVER['PHP_SELF']; ?>
A na końcu zmieniłem też rozszerzenie (pliku) z .htm na .php - ponieważ w .htm wywalało błąd.
W rezultacie komunikat o sukcesie pojawia się teraz nad formularzem, a nie na białej stronie. |
|
|
|
 |
jaredj
Zanim zapytam poszukam odpowiedzi

Dołączył: 05 Maj, 2010
Posty: 6
Status: Offline
|
| Wysłany:
06.05.2010 17:46 |
|
No to obejmij cały blok formularza warunkiem na wyświetlenie - jeśli zmienne z formularza były ustawione i skrypt je przetworzył - to po prostu nie wyświetlaj formularza. |
|
|
|
 |
lucas
Specjalista


Dołączył: 30 Wrz, 2002
Posty: 787
Skąd: 44-105 Gliwice
Status: Offline
|
| Wysłany:
13.05.2010 12:47 |
|
Na mój gust jest tu już coś za bardzo namieszane. Proponuję zebrać doświadczenie, przemyśleć i zacząć jeszcze raz od początku.
po pierwsze proponuję przyjrzeć się takim instrukcjom php jak: include, file i print , a najlepiej zaznajomić się z systemem szablonów - osobiście polecam smarty. Prosty łatwy i przyjemny a przy tym pełen możliwości. |
_________________ GG: 1424201
http://www.lucas.net.pl
http://lucas-web-studio.blogspot.com/
Promocja dla Małych i Średnich Firm |
|
|
 |
goldenhand
Jestem tu już dłuższą chwilę


Dołączył: 02 Sie, 2008
Posty: 114
Status: Offline
|
| Wysłany:
16.05.2010 14:16 |
|
To tu jeszcze ktoś pisze? Nie otrzymałem żadnej wiadomości na maila. Nie ważne i tak już przecież napisałem, że problem jest rozwiązany - formularz działa poprawnie (waliduje i wysyła).
Korzystając z okazji mam jednak jeszcze pytanie:
Dlaczego ten sam formularz (działający poprawnie) umieszczony na innej stronie, ale na tym samym serwerze nie chce już wysyłać wiadomości?
Tzn. waliduje poprawnie, po czym wysyłam wiadomość, ale wiadomość nie dociera do odbiorcy.
Oczywiście adres odbiorcy zmieniłem ( i nic więcej!). |
|
|
|
 |
januzi
Mega GURU


Dołączył: 18 Paź, 2002
Posty: 1452
Status: Offline
|
| Wysłany:
17.05.2010 02:55 |
|
Funkcja mail zablokowana. Lokalny filtr antyspamowy zablokował. Docelowy filtr antyspamowy zablokował. Docelowy serwer odmówił przyjęcia maila. Reguły w programie pocztowym odbiorcy zadziałały. |
|
|
|
 |
|
|