@govord_name

Как мне решить проблему с php формой отправкой сообщений на несколько email по порядку?

Выдает ошибку вот такую
Parse error: syntax error, unexpected '$i' (T_VARIABLE) in ...\domains\form\wp-content\themes\test\page.php on line 88

проблемная строка вот
if ($i <= count($email_to) $i++;

вот код

<?

function show_form($s="") {
if ($s) echo "<b>Ошибка:</b> $s";
?>
<table width=450 cellpadding=0 cellspacing=1 bgcolor=#808080>
<form action="" method="post">
<tr><td colspan=2 bgcolor=#eaebef height=25 align=center>
<b>Прямая связь</b></td></tr>
<tr bgcolor=#f0f0f0>
<td height=30 width=200> <b>Ваше имя: *</b></td>
<td bgcolor=#ffffff> <input type=text name=name size=30></td>
</tr>
<tr bgcolor=#f0f0f0>
<td height=30> <b>Ваш email: *</b></td>
<td bgcolor=#ffffff> <input type=text name=email size=30></td>
</tr>
<tr bgcolor=#f0f0f0>
<td height=30> <b>Ваш сайт:</b></td>
<td bgcolor=#ffffff> <input type=text name=domain size=30></td>
</tr>
<tr bgcolor=#f0f0f0>
<td height=30 colspan=2>
<table width=100% cellpadding=5 cellspacing=5><tr><td>
<b>Ваше сообщение: *</b><br>
<textarea cols=50 rows=5 name=message></textarea>
</td></tr></table>
</td>
</tr>
<tr><td colspan=2 bgcolor=#eaebef height=35 align=center>
<input type="submit" value="Отправить вопрос"></td></tr>
<input type=hidden name=a value=1>
</form>
</table>
<p>
Поля, отмеченные звездочкой (*) должны быть заполнены.
<? 
exit();
};


// если не было добавления сообщения, выводим форму
if (!$_POST['a']) show_form();

// проверяем данные формы
if (!$_POST['name']) show_form("Укажите Ваше имя!");
if (!$_POST['email']) show_form("Укажите Ваш email!");
if (!$_POST['message']) show_form("Вы не заполнили текст сообщения!");

// описываем переменные и rfc заголовки письма

// обратный адрес будет указанным адресом отправителя сообщения







$from = $_POST['email']; 


function getRecipient(){
  $email_to=array('one@example.com', 'two@example.com','three@example.com');
  $f=__DIR__.'/file_v_kotorom_sohranim_index';
$i=0;
if(file_exists($f)) {
      $i = file_get_contents($f);
      if ($i <= count($email_to) $i++; 
      file_put_contents($f, $i);
    } 
    else{
      file_put_contents($f, $i);
}
  return $email_to[$i]; 
}



$subject="Тема письма";
$body=$_POST['message'];
$headers = "content-type: text/plain; charset='windows-1251'"; // кодировка письма

if(strpos($_SERVER['SERVER_SOFTWARE'], '(Win32)')===FALSE)
{
	// открываем sendmail и отправляем письмо
	$mail = popen("/usr/sbin/sendmail -i -f$from -- $recipients", 'w');
	$text_headers = "from: $fromnsubject: $subject".$headers;
	fputs($mail, $text_headers);
	fputs($mail, "n");
	fputs($mail, $body);

	// проверяем на ошибку
	$result = pclose($mail) >> 8 & 0xff;
}
else $result=(mail($recipients, $subject, $body, "from: ".$from."rn".$headers) ? FALSE : TRUE);


if ($result) echo "Сообщение не было отправлено!";
else echo "Спасибо, Ваше сообщение отправлено. Администратор свяжется с Вами в ближайшее время!";
?>
  • Вопрос задан
  • 70 просмотров
Пригласить эксперта
Ответы на вопрос 1
Нет скобки в строке
if ($i <= count($email_to) $i++;
Ожидалось, возможно, это
if ($i <= count($email_to)) $i++;
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы