Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Jak zrobić formularz kontaktowy?
Forum PHP.pl > Forum > Przedszkole
muk4
Rany! Próbowałem wszystkich gotowych formularzy i żaden nie działał! Nie wiem co jest tego przyczyną. Najczęściej występowały błędy np w $end - gdziekolwiek to jest (niby "?>" na końcu). Nawet jak wysyłałem przez mail() to i tak nie działało. Może macie jakiś sprawdzony skrypt lub gotowiec który by działał?

Mam Xampp'a i najnowsze Apache, MySQL, php ale to i tak nic nie daje.

Głównie chodzi o pozycje:
Nick:
E-mail:
Wiadomość:

I żeby wysyłało na adres w zmiennej "$adres" podanej w pliku cofing.php

Pozdrowienia.
NetJaro
Hmm... na początku pewnie masz <? - zamień to na <?php

Dodatkowo, policz wszelkie klamry otwierające ({) i zamykające (}) - powinno być ich tyle samo winksmiley.jpg I średniki posprawdzaj..
Cienki1980
Ciężko coś sprawdzać skoro nie pokażesz kodu.

Ja mam sprawdzony system do wysylania ..
  1. <?php
  2. $error='';
  3. $adres='jakis@adres.meilowy.pl';
  4. if($_POST['go']=='wyslij')
  5. {
  6.  if($_POST['nick']=='')
  7. $error='podaj nick<br>';
  8.  if($_POST['tresc']=='')
  9. $error='podaj tresc';
  10.  
  11.  if($error=='')
  12. if(mail($adres,'wiadomosc od - '.$_POST['nick'],$_POST['tresc']))
  13.  $error='wiadomosc wyslana';
  14. else
  15.  $error='wiadomosc nie wyslana';
  16. }
  17.  
  18. echo "<center>";
  19. if($error!='')
  20.  echo "<BR>".$error."<BR>";
  21. echo "<form action="send.php" method="post">";
  22. echo "NICK:<input type="text" value="" name="nick"><br>";
  23. echo "Wiadomosc:<textarea name="tresc"></textarea>";
  24. echo "<br><input type="submit" value="wyslij"><input type="hidden" value="wyslij" name="go"></form></center>";
  25. ?>

Ten na pewno działa
muk4
Jeżeli wkleję twój kod w plik send.php i wpiszę swój mail to jak wysyłam to wyskakuje:
Cytat
Warning: mail() [function.mail]: "sendmail_from" not set in php.ini or custom "From:" header missing in D:\gry Piotra\XAMPP\xampp\htdocs\send.php on line 12


Domyślam się że chodzi o 4 funkcje mail() to wpisałem:

Na początku ale przed <?php:
$header = "From: $adres\r\nReply-To: $adres\r\n";

A w mail()
  1. <?php
  2. [...]
  3.  if(mail($adres,'wiadomosc od - '.$_POST['nick'],$_POST['tresc'], $header))
  4. [...]
  5. ?>


I wyskakuje:
Cytat
Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in D:\gry Piotra\XAMPP\xampp\htdocs\send.php on line 13


Zmieniałem SMTP i porty we wszystkich znalezionych plikach php.ini : w apache/bin, php, i php/php4 i to nic nie pomogło(dalej pisze: "at localhost"). To może by coś z tą funkcją ini_set(). Tylko co wpisać w nawiasy?

PS. Do czego jest potrzebny port? Wpisałem sobie 1100 tak od niechcenia smile.gif To źle?
Cienki1980
Mój kod działa .. jeżeli działa serwer pocztowy. Jeżeli sprawdzasz to na lokalu to tak długo jak nie będziesz miał zainstalowanego jakiegoś serwera pocztowego to Ci nie zadziała.
nospor
nie 'From:' $_POST['nick],
a: 'From:'.$_POST['nick]
zjadles kropke
muk4
Cytat(Cienki1980 @ 29.01.2007, 15:13:20 ) *
Mój kod działa .. jeżeli działa serwer pocztowy. Jeżeli sprawdzasz to na lokalu to tak długo jak nie będziesz miał zainstalowanego jakiegoś serwera pocztowego to Ci nie zadziała.


Ja mam na gmailu i powinien działać

Cytat(nospor @ 29.01.2007, 15:15:59 ) *
nie 'From:' $_POST['nick],
a: 'From:'.$_POST['nick]
zjadles kropke


Próbowałem z kropkami, bez, z przerwami i bez i to nic nie dało.


EDYTOWAŁEM SWÓJ POST WYŻEJ. POMOCY:)
Cienki1980
Co masz na gmailu questionmark.gif Ja mówie o serwerze pocztowym a nie o adresie pocztowym.

tutaj masz link gdzie właśnie działa ten powyższy skrypt. Wpiszesz wszystkie dane i mail zostanie wysłany na podany adres.
muk4
No server SMTP i adres smtp.gmail.com
Jak to wpisze w php.ini to on tego jakby nie czyta i dalej wyskakuje localhost.

I tu pytanie jak moge to zmienic przy pomocy funkcji ini_set()
luk251284
Cytat(nospor @ 29.01.2007, 15:15:59 ) *
nie 'From:' $_POST['nick],
a: 'From:'.$_POST['nick]
zjadles kropke


zjadles apostrofa;)
'From:'.$_POST['nick']
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.