moslem_f

ارسال ایمیل با کلاس not execute: /usr/sbin/sendmail phpmailer

8 پست در این موضوع قرار دارد

سلام عرض ادب و خسته نباشید در انجمن های مختلفی این مطلب رو سرچ کردم اما متاسفانه به نتیجه درستی نرسیدم در این انجمن هم یا به علت پیدا نکردن کیورد خاص یا نبودن مطلب به نتیجه نرسیدم پس بر این شدم تا دست به دامن بشم 109.gif میرم سر اصل مطلب با تشکر ؛

من از کلاس phpmailer برای ارسال ایمیل استفاده کردم که این کلاس رو به پیوست تقدیم حضورتان میکنم تا بیشتر راهنمایی کنید ؛

با استفاده از این کلاس function درست کردم با نام sendEmail این فانکشن کارش ارسال ایمیل هست که در ادامه کامل function رو براتون میزارم که به شرح زیر هست ؛


/// ارسال ایمیل



function sendEmail($title,$useremail,$body)
{
require_once('class.phpmailer/class.phpmailer.php');

$mail = new PHPMailer(); // defaults to using php "mail()"

$mail->IsSendmail(); // telling the class to use SendMail transport

//$body = file_get_contents('contents.html');

$mail->SetFrom('info@p30pdf.ir', 'First Last');
$address = "info.p30pdf@yahoo.com";
$mail->AddAddress($useremail, "John Doe");
$mail->AddAddress($address, "John Doe");

$mail->Subject = "$title";

$mail->AltBody = "این ایمیل ممکن است حاوی تصاویر باشد لذا ایمیل خود را به صورت اچ تی ام ال مشاهده نمایید"; // optional, comment out and test

$mail->MsgHTML($body);

$mail->AddAttachment("images/phpmailer.gif"); // attachment
$mail->AddAttachment("images/phpmailer_mini.gif"); // attachment

if(!$mail->Send()) {
return false;

} else {
return true;

}
}

حالا این function رو include کردم به صفحه contactus.php خودم که همون فرم تماس با ما هست .

و حال کد پی اچ پی contactus.php به شرح زیر هست ؛


if (isset($_POST['submit']))
{
if(isset($_POST['title']) AND !empty($_POST['title']) AND isset($_POST['body']) AND !empty($_POST['body']))
{
$title = $_POST['title'];
$useremail = $_POST['email'];
$body = $_POST['body'];
$result = sendEmail($title,$email,$body);
if($result)
{
echo "پیام شما با موفقیت ارسال شد";
}
else
{
echo "خطایی در ارسال ایمیل رخ داده است لطفا موارد را با دقت وارد کنید";
}
}
}

و کد HTML مربوط به فرمم هم به شرح زیر هست ؛


<form method="post">
عنوان : <input name="title" type="text" /><br />
ایمیل شما : <input name="email" type="text" /><br />
متن پیام شما : <textarea name="body" cols="40" rows="10"></textarea>
<input name="submit" type="submit" value="ارسال" />
</form>

و حال این که هنگامی که از صفحه تماس با ما عنوان رو وارد می کنم ، ایمیلمو وارد می کنم و متن پیام رو وارد کرده و ارسال رو میزنم function من false میشه و پیغام خطایی در ارسال ایمیل رخ داده است لطفا موارد را با دقت وارد کنید echo میشه که در شروط صفحه contactus.php که در بالا کدشو نشونتون دادم می بینید و بعد از نمایش پیام ، پیامی مبنی بر Invalid address: Could not execute: /usr/sbin/sendmail میده و ایمیل ارسال نمیشه و همه تنظیمات در تابع sendEmail مربوط به کلاس phpmailer هم که قابل مشاهده شما هست که در اول متن گذاشتم در ضمن در صورت نیاز برای این که بدونید امکان ارسال ایمیل در هاست سایت من روی سرور وجود دارد یا نه اگر نیاز هست بگید تا phpinfo رو پیام خصوصی کنم یا این که اگر میدونید فانکشن خاصی باید باز باشه بگید تا من ببینم و به شما بگم . خواهش می کنم در صورت امکان اگر امکان کمک هست دریغ نکنید با تشکر.

ارادتمند : مسلم فلاح نیت

php mailer.zip

0

به اشتراک گذاری این پست


لینک به پست

در ضمن روی لوکال نیست روی اینترنت هست یعنی روی سرور

0

به اشتراک گذاری این پست


لینک به پست

مطمئنید آدرس دهی شما درست است ؟ رو phpinfo حتما تست کنید .

این خط رو کامنت کنید

$mail->IsSendmail(); // telling the class to use SendMail transport

ببینید درست میشه ؟

1

به اشتراک گذاری این پست


لینک به پست

سلام خسته نباشید داداش روی phpinfo چیو باید تست کنم اگر چیز خاصی ازش مد نظرتون هست بگید تا بهتون بگم با تشکر.

داداش وقتی خط $mail->IsSendmail(); // telling the class to use SendMail transport رو کامنت کردم پیام رو ارسال کردم نوشت پیام شما با موفقیت ارسال شد ولی جلوش دوباره نوشت

Invalid address: و دیگه not execute: /usr/sbin/sendmail رو ننوشت و چون برای تست به خودم ایمیل زده بودم ایمیل رسید ولی عنوان رو به شکل زیر نوشته بود در ایمیلم

مسلم �لاح نیت

ممنون میشم اگر مشکل رومیدونید بگید با تشکر

0

به اشتراک گذاری این پست


لینک به پست

خب البته خودم با مقداری سرچ توگوگل به انگلیسی $mail->CharSet="UTF-8"; این سطر رو بعد از $mail->MsgHTML($body); قرار دادم در مورد خطای invalid adress نمیدونم کاملا رفعا شده یا نه ولی خب

چون می خواستم یک کپی از ایمیلی که داره ارسال میشه یعنی پیامی که کاربر ارسال می کنه از صفحه تماس با ما یک کپی هم به ایمیل خودش بره واسه همین به شکل زیر قسمت آدرس ایمیل رو آدرس دهی کردم


$mail->SetFrom('info@p30pdf.ir', 'First Last');
$address = "info.p30pdf@yahoo.com";
$mail->AddAddress($useremail, "John Doe");
$mail->AddAddress($address, "John Doe");

و حالا نمیدونم این مشکل invalid adress مربوط به این کد ها می باشد یا خیر البته هنگامی که یکی از mail->Address ها رو کامنت کردم مشکل invalid address حل شد اما خب چه طوری یک کپی از ایمیل برای طرف ارسال بشه و همچنین خودم

در ضمن


$mail->AddAddress($emladd);
$mail->AddAddress("mytest@gmail.com");
$mail->AddBCC('mytest2@mydomain.org', 'firstadd');

این لینک رو مشاهدهکنید مثل صفحه ارسال ایمیل خود یاهو و یا جیمیل و غیره برای ارسال ایمیل به غیر یا همون دیگران از mail->AddBCC استفاده کرده پس یعنی منم باید این طوری برای ارسال کپی ایمیل به اون کاربری که متن رو ارسال کرده استفاه کنم اگر نتیجه رو متوجه شدین بگین با تشکر

در مورد اون سطری که گفتین کامنت کنم هم اگرمیشه توضیح بدین چیه و چه کاری انجام و اینکه علت کامنت کردنش چی بود با تشکر داداش

ویرایش شده در توسط moslem_f
0

به اشتراک گذاری این پست


لینک به پست

کارش به صورت کامنت جلوش نوشته هست

Definition: sendmail: The Sendmail program is a very widely used Mail Transport Agent (MTA). MTAs send mail from one machine to another. Sendmail is not a client program, which you use to read your email. Sendmail is a behind-the-scenes program which actually moves your email over networks or the Internet to where you want it to go. If you ever need to reconfigure Sendmail, you will also need to have the sendmail.cf package installed. If you need documentation on Sendmail, you can install the sendmail-doc package.

نه مشکل از اون نیست

1

به اشتراک گذاری این پست


لینک به پست

متوجه نشدم چرا وقتی کامنتش کردم مشکل حل شدممکنه توضیح بدین اگر میدونید لطفا با تشکر.

0

به اشتراک گذاری این پست


لینک به پست

بنده یه آموزش فوق العاده در این مورد دیدم که دیدن این فیلم آموزشی برای شما هم فکر میکنم مفید باشه.در کل نحوه کار با phpmailer و تنظیمات اون رو توی آموزش توضیح داده به خوبی:لینک آموزش:

clicksite.ir/article.php?id=74

0

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری

  • مطالب مشابه

    • توسط asghar
      سلام
      من یک سایت وردپرسی دارم که خیلی دیر لود میشه 
      میخواستم بدونم برای رفعش باید چی کار کنم؟
      آدرس سایت https://www.hairent.com
       
    • توسط cheeta
      با سلام خدمت اساتید گل وردپرس
      من برای فروش از افزونه edd و با قالب دستکاری شده صحیفه کار میکنم. مشکلی که دارم اینه مه وقتی به عنوان مدیر خرید میکنم تمام مراحل تا پس از پرداخت تا اخر اجرا میشه اما وقتی با نقش های کاربری دیگه از جمله مشترک خرید میکنم وقتی در صفحه سبد خرید روی " خرید و دانلود " کلیک میکنم هیچ اتفاقی نمی افته. یعنی به صفحه پرداخت نمیره و البته هیچ خطایی هم نمیده.
      با عوض کردن قالب مشکل حل میشه اما می خوام مشکل رو در همین قالب بر طرف کنم. چطور میشه این محدودیت رو برای سایر نقش های کاربری برداشت؟ کی چیزی در این زمینه هست؟
    • توسط saeid1872
      سلام دوستان
      تو کمتر از یک ماه سایتم 61 ارور 500 ثبت کرده که در حال زیاد شدن هستش نمیدونم چرا این ارورهارو ثبت میکنه
      لطفا دلیلش رو بگید و اینکه چطور باید رفع کنم
      من خیلی اصلا حرفه ای نیستم فقط خواهشا جوری راهنمایی کنید که بتونم رفعش کنم.

    • توسط hamid.he
      سلام بر دوستان .
      يك سايت با استفاده از قالب هاي آماده روي لوكال هاست طراحي كرده ام تصميم گرفت بقيه كار سايت را بعد از انتقال بر روي هاست انجام دهم . خودم بلد نبودم سايت را به هاست منقل كنم از دوستي خواهش كردم انجام دهد . منتها بعد از انتقال به هاست اولا صفحه به هم ريخته و نادرست است . عكس ها نمي آيند و هم چنين روي هر لينك و يا منويي كليك مي كنيم صفحه به لوكال هاست مي خواهد برود و براي همين چيزي بالا نمي آيد . آدرس سايت : www.behinja.com  مي باشد كه مي توانيد مشاهده . چگونه مي شود اين مشكل را رفع كرد . پيشاپيش از پاسخ گويي دوستان تشكر مي كنم
    • توسط MahTV
      سلام دوستان و اساتید عزیز
      اگه بخوایم به صورت شرطی (کوچک بودن صفحه نمایش ) تو موبایل یک باکس رو (مثل باکس دانلود) به کاربر در حالت چرخش صفحه نشون بدیم 
      و به کاربر بگیم که برا دیدن لینک ها باید گوشی موبایلت رو بچرخونی باید چیکار کنیم ؟
       
      من این کد رو از سایتی برداشتم ولی نمیدونم چطور باید ازش استفاده کنم 
      <div class="alerta"><b class="icon-screen-rotation"></b><p style="text-align: center;"><span style="font-family: tahoma,arial,helvetica,sans-serif;">برای دیدن لینکهای دانلود ، موبایل خود را بچرخانید . دقت کنید گزینه اسکرین روتیشن یا چرخش صفحه در دستگاه شما روشن باشد </span></p></div>