Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][PHP] Niedziałający formularz kontaktowy
Forum PHP.pl > Forum > Przedszkole
seba1016
Witam serdecznie, od razu na wstępie chciałbym zaznaczyć, że nie zajmuje się php, jednak osoba która była za to odpowiedzialna, nie odpisuje, dlatego zgłaszam się do was z prośbą o wyjaśnienie, bądź przerobienie kodu tak aby wysyłanie formularza działało. Próbowałem na kilku hostingach, na żadnym z nich wiadomości nie wysyłają się. Próbowałem również na SMTP od google z prywatnego emaila, nadal nic. Ktoś ma pomysł? Będę na prawdę wdzięczny!

  1. <?php
  2. ini_set('display_errors','1');
  3. if(isset($_POST['submit']))
  4. {
  5.  
  6. $message=
  7. 'Full Name: '.$_POST['fullname'].'<br />
  8. Subject: '.$_POST['subject'].'<br />
  9. Phone: '.$_POST['phone'].'<br />
  10. Site see: '.$_POST['site'].'<br />
  11. Contact form: '.$_POST['contact'].'<br />
  12. Email: '.$_POST['emailid'].'<br />
  13. Comments: '.$_POST['comments'].'
  14. ';
  15. require "phpmailer/class.phpmailer.php"; //include phpmailer class
  16.  
  17. // Instantiate Class
  18. $mail = new PHPMailer();
  19.  
  20. // Set up SMTP
  21. $mail->IsSMTP(); // Sets up a SMTP connection
  22. $mail->Host = "mx1.hostinger.pl"; //Gmail SMTP server address
  23. $mail->SMTPDebug = false;
  24. $mail->SMTPAuth = true; // Connection with the SMTP does require authorization
  25. $mail->SMTPSecure = "ssl"; // Connect using a TLS connection
  26.  
  27. $mail->Port = 2525; //Gmail SMTP port
  28. $mail->Encoding = '7bit';
  29.  
  30. // Authentication
  31. $mail->Username = "phpsender@asvaphp.esy.es"; // Your full Gmail address
  32. $mail->Password = "test123"; // Your Gmail password
  33.  
  34. // Compose
  35. $mail->SetFrom($_POST['emailid'], $_POST['fullname']);
  36. $mail->AddReplyTo($_POST['emailid'], $_POST['fullname']);
  37. $mail->Subject = "New Contact" ; // Subject (which isn't required)
  38. if (isset($_FILES['uploaded_file']) &&
  39. $_FILES['uploaded_file']['error'] == UPLOAD_ERR_OK) {
  40. $mail->AddAttachment($_FILES['uploaded_file']['tmp_name'],
  41. $_FILES['uploaded_file']['name']);
  42. }
  43. $mail->MsgHTML($message);
  44.  
  45. // Send To
  46. $mail->AddAddress("phpreceiver@asvaphp.esy.es"); // Where to send it - Recipient
  47. $result = $mail->Send(); // Send!
  48. $message = $result ? 'Successfully Sent!' : 'Sending Failed!';
  49. unset($mail);
  50.  
  51. }
  52. ?>
  53.  
  54. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  55. <html xmlns="http://www.w3.org/1999/xhtml">
  56. <head>
  57. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  58. <title>Dokument bez tytułu</title>
  59. </head>
  60. <link rel="stylesheet" type="text/css" href="contactformtheme.css">
  61. <link rel=""
  62. <body>
  63. <form action="" method="post" enctype="multipart/form-data" id="contact-frm">
  64. <fieldset>
  65. <legend>Contact Form</legend>
  66. <ul>
  67. <li>
  68. <label for="name">Full Name <strong class="asterisk">*</strong></label>
  69. <input type="text" name="fullname" id="name" placeholder="Name and surname" />
  70. </li>
  71. <li>
  72. <label for="email">E-mail <strong class="asterisk">*</strong></label>
  73. <input type="email" name="emailid" id="email" placeholder="Your e-mail address" />
  74. </li>
  75. <li>
  76. <label for="phone">Phone Number</label>
  77. <input type="tel" name="phone" id="phone" placeholder="Your phone number" />
  78. </li>
  79. <li>
  80. <label for="subject">Label <strong class="asterisk">*</strong></label>
  81. <select id="subject" name="subject">
  82. <option value="1">Purchase Support: Payment Methods, Upgrades, and Products</option>
  83. <option value="2">Job Find Support: Free CV Upload, Free phone consultaiton, and Issues </option>
  84. <option value="3">Others</option>
  85. </select>
  86. </li>
  87. <li>
  88. <label for="message">Text <strong class="asterisk">*</strong></label>
  89. <textarea name="message" id="comments" rows="10" cols="50" placeholder="Enter your commant here">
  90. </textarea>
  91. <li class="options-set-inline">Preferred contact form:
  92. <ul>
  93. <li class="choose">
  94. <label><input type="radio" name="contact" value="Email" /> E-mail</label>
  95. </li>
  96. <li class="choose">
  97. <label><input type="radio" name="contact" value="Phone" /> Phone</label>
  98. </li>
  99. </ul>
  100. </li>
  101. <li class="options-set-inline">used our service before?
  102. <ul>
  103. <li class="choose">
  104. <label><input type="radio" name="site" value="y" /> Yes</label>
  105. </li>
  106. <li class="choose">
  107. <label><input type="radio" name="site" value="n" /> No</label>
  108. </li>
  109. </ul>
  110. </li>
  111. <li class="options-set-inline">Attachments<br />
  112. <input type="file" name="uploaded_file">
  113. </li>
  114. </ul>
  115. </fieldset>
  116. <p class="frm-actions wrapper">
  117. <input type="submit" name="submit" value="Send to the consultant" />
  118. </p>
  119. </form>
  120. </body>
  121. </html>


A więc jest jakiś geniusz, który by mnie naprowadził? Błagam, męczę się z tym od rana:).
kamilo818
Żeby wysłać maila za pomocą phpMailera musisz użyć maila założonego na tym samym serwerze.
Też się kiedyś namęczyłem i rozwiązaniem tego jest użycie maila z tego samego serwera na którym stoi strona.
mar1aczi
Ustawiłeś serwer do wysyłki poczty (linia 23) oraz, że ma działać po SSLu (linia 26). W lini 28 masz podany port 2525.
Czy oby na pewno jest to poprawny port? Sprawdź to dobrze na hostingerze.
untorched
W pakiecie darmowym na Hostinger.pl nie ma dostępu do SMTP(tak wynika z oferty, a jak jest na prawdę?), więc to także może być powód.
nospor
Cytat
Żeby wysłać maila za pomocą phpMailera musisz użyć maila założonego na tym samym serwerze.
Też się kiedyś namęczyłem i rozwiązaniem tego jest użycie maila z tego samego serwera na którym stoi strona.
Tja.... Panu już podziękujemy...

@autor: wyswietl błąd PHPMailera to sie dowiesz w czym problem.
A w ogole dochodzi do momentu wysłania? Sprawdzałes?
seba1016
Problem rozwiązałem, przyczyną były adresy email. Jak kolega w pierwszym poście napisał, trzeba użyć poczt na tym samym serwerze, wtedy działa miodzio.

Dzięki wszystkim za pomoc!
nospor
Cytat
Jak kolega w pierwszym poście napisał, trzeba użyć poczt na tym samym serwerze, wtedy działa miodzio.
Wlasnie o to chodzi ze nie trzeba.... ALbo nie umiecie skonfigurowac parametrow do poczty, albo macie jakieś firewalle lub serwer nie ma wyjscia na swiat.
kamilo818
Cytat(nospor @ 1.04.2015, 13:29:25 ) *
Tja.... Panu już podziękujemy...


A jednak miałem rację.
Nie wiem dlaczego tak jest ale na 3 serwerach próbowałem skonfigurować phpmailer żeby wysyłał z gmaila i się nie dało. Dopiero jak założyłem maile na tym serwerze to wszystko poszło.
nospor
Cytat
A jednak miałem rację.
Nie, nie miales racji. Mowienie, ze aby korzystac z PHPMailera, nalezy miec konto na tym samym serwerze to gadanie glupot.
Czystym zbiegiem okolicznosci w tym temacie pojawily sie dwie osoby, ktory mialy ten sam problem: nie umialy poprawnie skonfigurowac polączenia smtp albo miales jakis inny prosty problem, Ot i tyle.
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.