PDA

View Full Version : مبتدی: ارسال یک کامنت به ایمیل از طریق PHP



s.keshvadi
جمعه 01 خرداد 1394, 23:09 عصر
با سلام. من با برنامه نویسی آشنایی دارم اما با PHP نه.
میخام یک فرم بسازم و وقتی کاربر کامنتش را نوشت و روی دکمه ارسال کلیک کرد، اطلاعات بهم ایمیل بشه.
روی هاستم هم یک ایمیل دارم.

ممنون میشم به عنوان شروع کار محبت کنید و راه رو برای یادگیری این کار بهم نشون بدید. با تشکر

under22
جمعه 01 خرداد 1394, 23:25 عصر
بخش PHP تا اطلاع ثانوی تعطیل می باشد.
دوست عزیز چرا با کاربری که سوال داره اینگونه رفتار میکنی .
یه بحثی شده درسته تو تالار مسولین و دیدین که گند خیلی از کارا در اومد من اول از شخصی حمایت کردم اما الآن دیگه نه .
درسته آقای کرامتی فر نظم تالار رو بهم ریختن کمی و تو طول زمان درست میشه
و اما شما دوست عزیز با این شکلی عمل کنی


<?php
// the message
$msg = "First line of text\nSecond line of text";

// use wordwrap() if lines are longer than 70 characters
$msg = wordwrap($msg,70);

// send email
mail("someone@example.com","My subject",$msg);
?>

s.keshvadi
شنبه 02 خرداد 1394, 00:35 صبح
با کمک شما دوستان این کار رو انجام دادم. اینجا قرار می دهم شاید برای سایر دوستان مفید باشه.

صورت مسئله: طراحی یک صفحه برای ارسال ایمیل
1. ابتدا باید یک ایمیل را در هاست تان ایجاد کرده باشید. فرض کنیم این ایمیل Admin@mysite.com باشد.
2. یک فایل contact.php را در هاست ایجاد کنید که اطلاعات برای ارسال ایمیل یا کامنت را از کاربر دریافت کند و کدهای زیر را وارد نمایید (البته این صفحه می تواند HTML نیز باشد):
<body>
<form method="post" action="sendMail.php">

<label for="name">Name:</label>
<input type="text" name="name" id="name">


<label for="email">Email:</label>
<input type="email" name="email" id="email">


<label for="comments">Comments:</label>
<textarea name="comments" id="comments"></textarea>


<input type="submit" name="send" value="Send Message">

</form>
</body>
3. سپس یک فایل برای رسیدگی به این اطلاعات به نام sendmail.php در هاست ایجاد کنید تا اطلاعات وارد شده در صفحه قبلی را به همان ایمیلی که ابتدا ایجاد کرده بودیم بفرستد. کدهای زیر را در این فایل قرار دهید.
<?php
if (isset($_POST['send'])) {
$to = 'Admin@mysite.com';
$subject = 'Feedback from my site';
$message = 'Name: ' . $_POST['name'] . "\r\n\r\n";
$message .= 'Email: ' . $_POST['email'] . "\r\n\r\n";
$message .= 'Comments: ' . $_POST['comments'];
$headers = "From: webmaster@example.com\r\n";
$headers .= 'Content-Type: text/plain; charset=utf-8';
$success = mail($to, $subject, $message, $headers);
}?>

<body>
<?php if (isset($success) && $success) { ?>
<h1>Thank You</h1>
<p style="font-family:tahoma; font-size:16px; color:red">
پیغام شما با موفقیت ارسال گردید. <br>
با تشکر
</p>
<?php } else { ?>
<h1>متاسفم</h1>
<p style="font-family:tahoma; font-size:16px; color:red">
متاسفانه در ارسال پیغام مشکلی به وجود آمد. بعدا دوباره امتحان نمایید.
</p>
<?php } ?>
این کد هم شامل متن فارسی می شود و هم موفقیت یا عدم موفقیت ارسال ایمیل را اعلام می کند.
با آرزوی موفقیت