2012-10-05 2 views
0

время для нового проекта ... у меня есть сервер, у которого есть ограничение на количество электронных писем, которые он может отправить за день, поэтому я подумал, может быть, мне нужно, чтобы формы отбрасывали их в базы данных и отправлять их по электронной почте как одно сообщение один раз в день в виде единственного сообщения, разбитого на разрывы строк, так как оно встречается с новым сообщением каждый раз при отправке формы. моя форма представления работает, а также мой взгляд. мой оператор while вытаскивает данные, и если я его повторяю, он отлично показывает. единственная проблема, с которой я столкнулся, - это когда я пытаюсь поместить массив в функцию mail(). также он сообщает мне по электронной почте каждый раз, просто без содержания каждый раз.php form mail from database submission

мое в то время как заявление выглядит следующим образом (с эхо-влево в):

while ($ctform_row = mysql_fetch_array($ctform_query, MYSQL_ASSOC)) { 
echo $ctform_row['name']." - ".$ctform_row['email']." - ".$ctform_row['Phone']." - ".$ctform_row['message']." - ".$ctform_row['date']."<br />"; 
} 

я пытался заменить эхо с $ сообщение, и он показывает мне строку случайным образом в электронной почте. Что я делаю не так? моя форма функция почты выглядит следующим образом:

mail($destination, $subject, $message); 

Где моя тема и назначение уже установлены.

+0

и как вы устанавливаете свои строки? Покажите нам свой полный код, пожалуйста! – jtheman

+0

Возможно, добавьте линии вместе, заменив эхо: '$ message. = $ Ctform ...' –

ответ

1

Не видя своего кода, ваше описание заставляет меня полагать, что вы используете оператор присваивания, а не оператор конкатенации.

то, что вы делаете это:

$message = $ctform_row['name']." - ".$ctform_row['email']." - ".$ctform_row['Phone']." - ".$ctform_row['message']." - ".$ctform_row['date']."<br />"; 

и вы должны делать это:

$message .= $ctform_row['name']." - ".$ctform_row['email']." - ".$ctform_row['Phone']." - ".$ctform_row['message']." - ".$ctform_row['date']."<br />"; 

Обратите внимание на .=

Просто убедитесь, что вы определяете $message перед входом в то время цикла ($message = "";)

+0

, который отлично работал! благодаря! теперь, чтобы письмо выглядело хорошо, на данный момент его просто линии текста с почти не форматированием. –

0

Вы говорите, что вы каждый раз пишите вам, и я думаю, что это проблема для вас. Вы должны поместить весь код для сбора, отправки и очистки (?!) Данных в отдельный файл PHP, а затем сделать cronjob на вашем сервере, чтобы отправлять вам письмо каждый день.

+0

не каждый раз, когда форма отправляется, но я упомянул, что он отправил мне письмо по электронной почте, чтобы сказать, что основные функции функции mail() работают. –

+0

@ user1258619 ОК, это звучит для меня как проблема, когда вы написали это после «единственной проблемы ...» – jtheman

+0

lol, извините за это ... я иногда немного разбрасываю мозг. вы должны увидеть мой код, прежде чем я его очистку ... –