Функция почты PHP не отправляет никаких сообщений

Я смущен тем, что проблема, я не получаю никакого электронного письма при использовании функции mail .

PHP

 <?php if (isset($_POST['ch_but_logon'])) { $txt .= $_POST['named23']; mail("email@email.com","test",$txt); } ?> 

HTML

 <form action="mailer.php" method="post"> <input type="text" name="named23" size="12"> </form> </td> </tr> <tr> <td colspan="2" nowrap valign="top"> <input type="checkbox" name="CHK_NOCACHE" value="on"> </td> </tr> <tr> <td colspan="2"> <div> <input type="submit" name="ch_but_logon" value="Entrer"> 

@@@@ОБНОВИТЬ@@@@

обновленный код: Индекс

 <form action="mailer.php" method="post"> <input type="text" name="named23" size="12"> </td> </tr> <tr> <td colspan="2" nowrap valign="top"> <input type="checkbox" name="CHK_NOCACHE" value="on"> </td> </tr> <tr> <td colspan="2"> <div> <input type="submit" name="ch_but_logon" value="Entrer"> </form> 

MAILER.PHP

 <?php if (isset($_POST['ch_but_logon'])) { $txt = $_POST['named23']; mail("psadsaxu@yahoo.sds","test",$txt); } ?> 

Но теперь, опять же, он не отправляет электронную почту. Не получаю ничего.

Related of "Функция почты PHP не отправляет никаких сообщений"

Вам нужно закрыть </form> в конце кода, потому что все входы должны быть включены в форму, особенно <input type="submit" name="ch_but_logon" value="Entrer"> , которые используются для проверки на вашем PHP if (isset($_POST['ch_but_logon'])) {

И вам нужно удалить «точку» перед символом «equals», потому что $ txt ранее не был создан, и эта операция concat не нужна:

 $txt = $_POST['named23']; 

Ваш HTML недопустим. Вы не можете иметь <td> и <tr> вне формы, но </tr> и </td> внутри формы. Эти теги должны быть правильно вложены. Если вы не правильно вложите, браузер добавит все теги конца к внутренним тегам. Результатом этого является то, что ваша форма заканчивается после элемента named23 , а кнопка named23 и отправки не является частью формы.

Вы должны поместить всю таблицу в теги <form>...</form> .