Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]formularz kontaktowy, problem z przejściem serwera z PHP4 na PHP5
Krzysiek_1
post
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 15.10.2008
Skąd: Kleszczów

Ostrzeżenie: (0%)
-----


Witam,

mam wielką prośbę do fachowców o pomoc. (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Na stronie internetowej mam formularz kontaktowy w php, do tej pory działał poprawnie, ale od 1 września 2008 nastąpiło przełączenie domyślnego interpretera języka PHP 4 na serwerze na PHP 5. Od tego czasu mam problem z formularzem kontaktowym. Wszystko byłoby dobrze, gdyby nie fakt, że w emailu nie dostaję treści wiadomości.
Wszystkie inne pola z formularza przychodzą wypełnione.
W tym miejscu jest moja prośba o sprawdzenie kodu formularza, co może być przyczyną tego problemu po przejściu na PHP5 :

  1. <?php
  2. $wiadomosc = strtr($tekst, 'ĄĆĘŁŃÓŚŻŹąćęłńóśżź', 'ACELNOSZZacelnoszz');
  3. if (count($_POST))
  4. {
  5. $email = [email=""]'xxxx@xx.xx'[/email];
  6. $subject = 'Formularz kontaktowy ze strony www.xxxx.xx[url="http://www.avantidevelopment.pl"]'[/url];  
  7. $error = 'Wystąpił błąd podczas wysłania formularza, proszę o ponowne wysłanie';  
  8. $charset = 'iso-8859-2';  
  9. $imie = $_POST["imie"];
  10. $nazwisko = $_POST["nazwisko"];
  11. $firma = $_POST["firma"];
  12. $telefon = $_POST["telefon"];
  13. $poczta = $_POST["poczta"];
  14. $ip = $_SERVER['REMOTE_ADDR'];  
  15. $body = "\n Imię: $imie\n Nazwisko: $nazwisko\n Firma: $firma\n Telefon: $telefon\n E-Mail: $poczta\n IP: $ip\n\n Wiadomosc: $wiadomosc\n";
  16. $head =      
  17.  "MIME-Version: 1.0r\n" .    
  18.  "Content-Type: text/plain; charset=iso-8859-2r\n" .    
  19.  "Content-Transfer-Encoding: 8bitr\n";    
  20.  echo mail($email, "=?$charset?B?" . base64_encode($subject) . "?=" , $body , $head) ? $message : $error;  
  21.  }
  22. else
  23. {
  24. ?>


  1. <form ACTION="?" method="post">
  2. <P ALIGN="LEFT"><b>Imię: </b>
  3. <INPUT TYPE="text" NAME="imie" size="40">
  4. <P ALIGN="LEFT"><b>Nazwisko: </b>
  5. <INPUT TYPE="text" NAME="nazwisko" size="40">
  6. <P ALIGN="LEFT"><b>Firma: </b>
  7. <INPUT TYPE="text" NAME="firma" SIZE="40">
  8. <P ALIGN="LEFT"><b>Telefon: </b>
  9. <INPUT TYPE="text" NAME="telefon" SIZE="40">
  10. <P ALIGN="LEFT"><b>E-mail: </b>
  11. <INPUT TYPE="text" NAME="poczta" SIZE="40">
  12. <P ALIGN="LEFT"><b>Wiadomość: </b>
  13. <TEXTAREA ROWS=4 COLS=50 NAME="tekst"></TEXTAREA>
  14. <INPUT TYPE="Submit" VALUE="Wyślij formularz">
  15. <INPUT TYPE="Reset" VALUE="Wyszyść formularz">
  16. </P>
  17. </FORM>


z góry dzięki za wszelką pomoc
Krzysiek
Powód edycji: dodałem bbCode (ociu)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Krzysiek_1
post
Post #2





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 15.10.2008
Skąd: Kleszczów

Ostrzeżenie: (0%)
-----


mam jeszcze jedno pytanie,
czy jest możliwość dopisania do już istniejącego postu kodu php, takich funkcji, aby dane wysyłane w formularzu, były oprócz wysyłania ich email, archiwizowane w jakimś pliku na serwerze, z możliwością poźniejszego ich odczytu?

za każdą podpowiedź od fachowców dziękuję z góry (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
michalkjp
post
Post #3





Grupa: Zarejestrowani
Postów: 182
Pomógł: 14
Dołączył: 20.09.2008

Ostrzeżenie: (0%)
-----


Cytat(Krzysiek_1 @ 20.10.2008, 20:52:31 ) *
były oprócz wysyłania ich email, archiwizowane w jakimś pliku na serwerze


Coś takiego?

  1. <?php
  2.    $date = date('Y-m-d H:i:s');
  3.  
  4.    $fh = fopen("plik_z_wiadomosciami.txt", "a");
  5.    
  6.    fwrite($fh, "\n\n\n Data: $date\n\n");
  7.    fwrite($fh, "Imie: $imie\n");
  8.    fwrite($fh, "Nazwisko: $nazwisko\n");
  9.    fwrite($fh, "Firma: $firma\n");
  10.    fwrite($fh, "Telefon: $telefon\n");
  11.    fwrite($fh, "Poczta: $poczta\n");
  12.    fwrite($fh, "IP: $ip\n");
  13.    fwrite($fh, "Wiadomosc:\n $wiadomosc\n");
  14.  
  15.    fclose($fh);
  16. ?>

Dodaj na końcu skryptu i powinno działać - ew. popraw nazwę jakiejś zmiennej, bo nie testowałem (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Może wystąpić mały problem, jeśli kilka osób na raz będzie chciało wysłać wiadomość, bo nie można zablokować pliku – zawsze możesz dodać parametr daty do nazwy pliku, żeby każda wiadomość była zapisywana w oddzielnym pliku.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 14.10.2025 - 00:32