Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Formularz Kontaktowy
#1
Witam.
Znalazłem taki oto stary wątek na temat formularza kontaktowego na stronę www; http://ajo.pl/archiwum-archive/279328-formularz-kontaktowy-na-strone-www.html. Jest o tyle dobry, że nie korzysta z np. Outlooka, tylko bezpośrednio wysyła wiadomość na pocztę. W sumie wszystko działa, tylko:
1. w wiadomości, która przychodzi na pocztę nie ma polskich znaków. (przydały by się, ale nie koniecznie, w sumie ja je odczytuję i da się tekst odszyfrować Smile)
2. po wysłaniu wiadomości ze strony, przekierowuje na białą stronę z napisem " Wysłano mail " (bez polskich znaków). (chciałbym, żeby się wyświetliła krótka informacja np. w postaci jakiejś ikonki z napisem WYSŁANO WIADOMOŚĆ)
3. jeżeli np. nie wpiszemy wszystkich danych nie wysyła wiadomości i nie ma o tym informacji. (też przydałoby się info, żeby uzupełnić dane)

Proszę o pomoc i pomysły.
Odpowiedz
#2
Ad 1
Cytat:$wiadomosc .="<META HTTP-EQUIV=\"Content-type\" CONTENT=\"text/html; charset=iso-8859-2\">";
Cytat:$naglowek .="Content-type: text/html; charset=iso-8859-2\r\n";

Tu zmień charset=iso-8859-2\r\n na charset=UTF-8\r\n

Ad 2
a) Zeby były poslkie znaki to cały dokument, w którym masz ten kod musisz zapisać z kodowaniem UTF-8. Najlepiej skorzystaj z notepad++ wklej tam ten kod i przekonwertuj kodowanie na UTF-8 bez DOM.

b) co za problem dodać ikonki?
Zmień:
Cytat:print " Wysłano mail ";

Na
Cytat:echo '<img src="ikonka.jpg"><p style="color: red;">Wysłano wiadomość';
lub dowolny kod html

Ad 3
Cóż za problem dorobić warunki?

if(isset($_POST['mail']) && isset($_POST['wiadomosctresc']))
{
.
.
TUTAJ CAŁY MECHANIZM WYSYŁANIA
}
else
echo 'Nie podałeś wszystkich wymaganych danych';

Poczytaj o podstawach PHP bo gotowca tu nikt nie będzie robił.

A tak poza tym to kiepsko napisany ten skrypt do obsługi formularza Wink
Odpowiedz
#3
Powoli się uczę Smile
Skrypt napisany na "szybko", jak sam autor napisał, dlatego pewnie taki nie dopracowany, ale mi i tak się przydał.
Wielkie Dzięki za Pomoc.
Zaraz wprowadzam zmiany.
Odpowiedz
#4
spoko Wink jak coś to pisz Wink
Odpowiedz
#5
Hym... polskie znaki mam, z ikonką tyle się zmieniło, że zamiast białej strony z nieczytelnym napisem mam czytelną ikonkę :/, a nie oto mi chodziło.
Ale i tak do przodu Smile
Odpowiedz
#6
pokaż kod i powiedz co to znaczy czytelna ikona i nieczytelny napis ;P
Odpowiedz
#7
KOD PHP:

<?
$imie = trim($_POST['imie']);
$nazwisko = trim($_POST['nazwisko']);
$wiadomosctresc = trim($_POST['wiadomosctresc']);
$mail = $_POST['mail'];
if($imie and $nazwisko and $wiadomosctresc and $mail) {
$adres = " [email protected]";
$wiadomosc ="<html>";
$wiadomosc .="<head>";
$wiadomosc .="<META HTTP-EQUIV=\"Content-type\" CONTENT=\"text/html; charset=UTF-8\">";
$wiadomosc .="<hr><br> $imie <br> $nazwisko <br> $mail <br> $wiadomosctresc <br><hr>";
$wiadomosc .="</body>";
$wiadomosc .="</html>";
$naglowek ="$mail\r\n";
$naglowek .="MIME-Version: 1.0\r\n";
$naglowek .="Content-type: text/html; charset=UTF-8\r\n";
if(@mail($adres, 'Ze Strony', $wiadomosc, "From: ".$naglowek ));
echo '<img src="images/ikonka.png">';
}
?>

HTML:

<form method="POST" action="poczta.php">
<font color="#42cca7"><b>Imię i Nazwiako:</b></font> <center><input type="text" name="imie" size="20"><br></center>
<font color="#42cca7"><b>Temat:</b></font> <center><input type="text" name="nazwisko" size="20"></center>
<font color="#42cca7"><b>Twój e-mail:</b></font> <center><input type="text" name="mail" size="20"><br></center>
<font color="#42cca7"><b><i>Wiadomość:</b></i></font><br>
<textarea rows="5" name="wiadomosctresc" cols="38"></textarea></p>
<input type="submit" value="Prześlij" name="B1">
</form>
Odpowiedz
#8
Kod PHP:
<body>
<?
php
if(isset($_POST['submit']))
{

$od trim($_POST['email']);
$wiadomosc trim($_POST['wiadomosc']);

  if (!empty(
$_POST['email']) && !empty($_POST['wiadomosc']) )
   {
    
$mail 'twoj mail';
    
$naglowek ="MIME-Version: 1.0\r\n";
    
$naglowek .="Content-type: text/html; charset=UTF-8\r\n";
    
mail($mail'Tytuł wiadomości'$wiadomosc"From:".$naglowek);
    
$status '<img src="obraz.png" alt="ok"><p style="color: green;">Wiadomość została wysłana poprawnie !!</p>';
    }
   else
    
$status '<p style="color: red;">Nie podałeś wszystkich wymaganych danych!!</p>';
}

?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<?php  echo $status?>
<label for="email">
<input id="email" type="text" name="email" value="<?php echo $od?>" />
</label>
<label for="wiadomosc">
<textarea id="wiadomosc" rows="5" name="wiadomosc" cols="38"></textarea>
</label>
<input type="submit" name="submit" />
</form>
</body> 

Poznaj moją dobrą wolę :p ten kod wrzuć do jakiegoś pliku php. Zmodyfikuj sobie go jak chcesz Tongue
Odpowiedz
#9
Na razie Dzięki!
Jutro z tym powalczę Smile
Odpowiedz


Podobne wątki…
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Jak zrobic Formularz Kontaktowy na stronie ? Kodarth 191 255,841 06-04-2021, 16:25
Ostatni post: zerin
  Walidacja zdjęć + formularz harvester2001 6 5,980 24-03-2014, 19:01
Ostatni post: harvester2001
  php formularz - wszystkie pola muszą być wypełnione d3d3d3 2 3,636 01-10-2013, 14:16
Ostatni post: Kartofelek
  [PHP] Formularz mailowy - wysyłanie wiadomości spolprog 7 6,495 05-09-2013, 17:13
Ostatni post: Engine
  Pewny formularz and licznik JOzEk 1 2,349 04-05-2013, 14:35
Ostatni post: Engine

Skocz do:


Użytkownicy przeglądający ten wątek: 1 gości
Sponsorzy i przyjaciele
SeoHost.pl