بتاريخ: 23 يناير 201016 سنة comment_183102 بسم الله الرحمن الرحيمأخواني الاعزاء عملت بحث في المنتدى وجربت كل الطرق وما في اي فائدة , هل يوجد احد منكم جرب الطريقة ونجحت معااااااااااااااه ؟؟؟يا ريت حد يفيدنا بالموضوع للاهمية القصوى تقديم بلاغ
بتاريخ: 23 يناير 201016 سنة كاتب الموضوع comment_183107 قاصدكم يا شبااااااااااااااااااااااااااااااااب تقديم بلاغ
بتاريخ: 23 يناير 201016 سنة comment_183123 السلام عليكم ،،،أخي هناك ثلاث طرق لإرسال ايميل من الأوراكل وهي :1) utl_mail و هي تعمل مع 10gا2) utl_smtp و هي تعمل مع 8i وما فوق 3) utl_tcp وهي أيضاً تعمل مع 8i وما فوق انا استخدمت Utl_smtp وذلك لأنها تعمل على 8i وهذا هو الكود الذي استخدمته بعد وضعته في Procedure على مستوى قاعدة البيانات DECLARE v_From VARCHAR2(80) := 'sender mail'; v_Recipient VARCHAR2(80) := 'recipient mail'; v_Subject VARCHAR2(80) := 'test subject'; v_Mail_Host VARCHAR2(100) := 'Outgoing mail server (smtp)'; v_Mail_Conn utl_smtp.Connection; crlf VARCHAR2(2) := chr(13)||chr(10); BEGIN v_Mail_Conn := utl_smtp.Open_Connection(v_Mail_Host, 25); --- Outgoing mail server (smtp) port utl_smtp.Helo(v_Mail_Conn, v_Mail_Host); utl_smtp.Mail(v_Mail_Conn, v_From); utl_smtp.Rcpt(v_Mail_Conn, v_Recipient); utl_smtp.data(v_Mail_Conn, 'Date: ' || to_char(sysdate, 'Dy, DD Mon YYYY hh24:mi:ss') || crlf || 'From: ' || v_From || crlf || 'Subject: '|| v_Subject || crlf || 'To: ' || v_Recipient || crlf || crlf || 'Content-Type: text/html' || crlf || 'some message text'|| crlf || -- Message body 'more message text'|| crlf ); utl_smtp.Quit(v_mail_conn); EXCEPTION WHEN utl_smtp.Transient_Error OR utl_smtp.Permanent_Error then raise_application_error(-20000, 'Unable to send mail: '||sqlerrm); END; / sender mail : الإيميل المرسل منه recipient mail : الإيميل المرسل اليهطبعاً هذا الكود يرسل Simple Text اي نص بسيط ويمكن استخدامه لإرسال Html Message مثلاً v_From VARCHAR2(80) := 'sender mail'; v_Recipient VARCHAR2(80) := 'recipient mail'; v_Subject VARCHAR2(80) := 'test subject'; v_Mail_Host VARCHAR2(100) := 'Outgoing mail server (smtp)'; v_Mail_Conn utl_smtp.Connection; crlf VARCHAR2(2) := chr(13)||chr(10); mesg VARCHAR2( 4000 ); mesg_body varchar2(4000) /* Variable for storing HTML code */ := ' <html> <head> <title>Oracle Techniques By Alaa Albanna</title> </head> <body bgcolor="#FFFFFF" link="#000080"> <table cellspacing="0" cellpadding="0" width="100%"> <tr align="LEFT" valign="BASELINE"> <td width="100%" valign="middle"><h1><font color="#00008B"><b>Send Mail in HTML Format</b></font></h1> </td> </table> <ul> <li><b><a href="http://www.araboug.org">Oracle Techniques is for DBAs </li> <l><b><a href="http://www.araboug.org/ib/index.php?showuser=61038"> by Alaa Albanna </b> </l> </ul> </body> </html>'; BEGIN v_Mail_Conn := utl_smtp.Open_Connection(v_Mail_Host, 25); --utl_smtp.command(v_Mail_Conn,'STARTTLS'); utl_smtp.Helo(v_Mail_Conn, v_Mail_Host); utl_smtp.Mail(v_Mail_Conn, v_From); utl_smtp.Rcpt(v_Mail_Conn, v_Recipient); /* Making Message buffer */ mesg:= 'Date: '||TO_CHAR( SYSDATE, 'dd Mon yy hh24:mi:ss' )|| crlf || 'From:'||v_From|| crlf || 'Subject: Mail Through ORACLE Database' || crlf || 'To: '||v_Recipient || crlf || '' || crlf ||mesg_body||''; utl_smtp.data(v_Mail_Conn, 'MIME-Version: 1.0' ||CHR(13)|| CHR(10)||'Content-type: text/html' || CHR(13)||CHR(10)||mesg); utl_smtp.Quit(v_mail_conn); EXCEPTION WHEN utl_smtp.Transient_Error OR utl_smtp.Permanent_Error then raise_application_error(-20000, 'Unable to send mail: '||sqlerrm); END SEND_MAIL; / هذه فقط تجربتي البسيطة ويمكنك قراءة هذا الموضع بتتيع الرابط التالي لمعرفة باقي الأنواع بالأمثلة مع طريقة عمل Attachment http://www.orafaq.com/wiki/Send_mail_from_PL/SQLو بالتوفيق للجميع ،،،علاء البنا تقديم بلاغ
بتاريخ: 23 يناير 201016 سنة comment_183129 السلام عليكم ،،،نفس الكود شغال مع ال 10gفي ملاحظة مهمة جداً الإيميل المرسل منو ضروري يكون متعرف على ال outlookوبالتوفيق ،،، تقديم بلاغ
بتاريخ: 23 يناير 201016 سنة comment_183133 هل نستطيع ان نعملها في فورمز 10G يمعنى نعمل لها شاشة من الى الرسالة هل استطيع لاني من زمان ادور عليها تقديم بلاغ
بتاريخ: 24 يناير 201016 سنة كاتب الموضوع comment_183152 اخي رعوّود أشكرك على الرد , بس يعني بدي اعرف يعني هلا فقط انسخ البروسيجر وأضعه في قاعدة البيانات ولا في خطوات سابقة ؟؟؟؟؟يا ريت مزيد من التوضيح وبدي أعرف ايه دخل ال Outlock في الموضوع ؟؟؟أنا حاولت أجرب هذه الطريقة Send mail with UTL_MAIL BEGIN EXECUTE IMMEDIATE 'ALTER SESSION SET smtp_out_server = ''127.0.0.1'''; UTL_MAIL.send(sender => '[email protected]', recipients => '[email protected]', subject => 'Test Mail', message => 'Hello World', mime_type => 'text; charset=us-ascii'); END; / لانه شفت الكود صغير بس للاسف ما قدرت اعدل smtp_out_server ممكن حد يساعدني لانه بطلعي مسج لا يمكن تعديل الparameter file ساعدوني يا شباب تم تعديل 24 يناير 201016 سنة بواسطة المقنع2005 تقديم بلاغ
بتاريخ: 24 يناير 201016 سنة كاتب الموضوع comment_183167 حليت مشكلة البارميتر فايل لكن الان يا شباب شوفوا المشكلة وين صارت ORA-29261: æÓíØÉ ÛíÑ ÕÍíÍÉ ORA-06512: ÚäÏ "SYS.UTL_TCP", line 28 ORA-06512: ÚäÏ "SYS.UTL_TCP", line 257 ORA-06512: ÚäÏ "SYS.UTL_SMTP", line 116 ORA-06512: ÚäÏ "SYS.UTL_SMTP", line 139 ORA-06512: ÚäÏ "SYS.UTL_MAIL", line 405 ORA-06512: ÚäÏ "SYS.UTL_MAIL", line 594 ORA-06512: ÚäÏ line 2 تقديم بلاغ
بتاريخ: 24 يناير 201016 سنة كاتب الموضوع comment_183174 هذا رابط الموضوعhttp://www.orafaq.com/wiki/Send_mail_from_PL/SQLساعدوني يا شباب تقديم بلاغ
بتاريخ: 24 يناير 201016 سنة comment_183200 السلام عليكم ،،،اخي ال UTLMAIL,UTLSMTP,UTLTCP هذه كلها عبارة عن Packages موجودة على مجلد ال ADMIN الموجود على ال HOME تبع ال Forms على كل حال انا رفعت ملفات ال SQL بس انتاعملهم Run لإنشاء ال Packages أولاً فتح ال SQL PLUS و عمل Connect على ال Database بالمستخدم SYS AS SYSDBA وهذا مهم جداً ثانياً نزل الملفات من الرابط وفك الضغط على في اي مكان وليكن على C Drive ثالثاً نفذ ال Sql Script كما يلي : -- لل UTL_MAIL @ c:\prvtmail.plb; @ c:\utlmail.sql; -- لل UTL_SMTP @ c:\prvtSMTP.plb; @ c:\utlSMTP.sql; -- لل UTL_TCP @ c:\prvtTCP.plb; @ c:\utlTCP.sql; رابعاً قم بعمل Setting للإيميل الذي تريد الإرسال منه على Outlook والأفضل من واقع تجربتي الذي يكون من ال HOST الخاص بك خامساً قم بنسخ اي من الأكواد المكتوبة في مشاركتي وضعه في ال SQL PLUS مباشرة ونفذ لكي تتأكد من فعالية الكود وبعد ذلك كيف هذا الكود بالطريقة التي تناسبكوالله ولي التوفيق للجميع ،،،رابط الملفات :http://dc168.4shared.com/download/20596723...1347f/ADMIN.rar تقديم بلاغ
بتاريخ: 24 يناير 201016 سنة comment_183203 رابعاً قم بعمل Setting للإيميل الذي تريد الإرسال منه على Outlook والأفضل من واقع تجربتي الذي يكون من ال HOST الخاص بككيف يتم ذلك؟ وجزاك الله خيرا تقديم بلاغ
بتاريخ: 24 يناير 201016 سنة comment_183225 السلام عليكم ،،،من ال Outlook اذهب الىTools >> Option >> Account Setting >> From Email Tab >>> NewSelect Microsoft Exchange,POP3,IMAP,HTTP>>> Press NextCheck the box beside "Manual configre server setting or additional server type" >>> Press NextSelect Internet E-mail >>> Press Nextyour name : اسم المرسلُE-mail Address : الإيميل الخاص بكAccount type : نوع الإيميل الخاص بك POP or IMAPincoming mail serveroutgoing mail server (smtp ) هذه الإعدادات يكنك الحصول عليها من ال cpanel الخاصة بك والتي تحصل عليها من الشركة المستضيفة لموقعك أو التي اشتريت ايميلك منها user name & password : بيانات الدخولولو بحثت في الإنترنت سوف تجد الكثير .....وما قصدته بـ "الأفضل من واقع تجربتي الذي يكون من ال HOST الخاص بك" هو اني جربت ايميلات مجانية مثل Hotmail,gmail,gmx ولاكن كل محاولاتي فشلت ولكن عندما استخدمت ايميل ينتهي بـ net.sa أو edu.sa كانت العملية تتم بنجاحو بالتوفيق ،،، تقديم بلاغ
بتاريخ: 24 يناير 201016 سنة comment_183231 اخ رعوود هل يمكن عملها من الفورمبمعنى انشء لها شاشة ويقوم المستخدم بارسال الرسالة التي يريدها هل ممكن تقديم بلاغ
بتاريخ: 24 يناير 201016 سنة comment_183242 السلام عليكم ،،،نعم ياعزيز ان شاء الله ممكنانا ارفقة Form سريع يمكنك تجربته بعد ان تنشأ ال Packages الخاصة بـ UTL_SMTP تحديداً لأنها هي المستخدمة في ال Formايضاً تأكد من اعدادات الإيميل و دع ال Outlook مفتوح وبعدين اعمل run للـ Formوبالتوفيق ،،،الرابط هنا:http://dc193.4shared.com/download/20640369...20/sendmail.rar تقديم بلاغ
بتاريخ: 25 يناير 201016 سنة كاتب الموضوع comment_183296 اخي العزيز رعوّود اشكرك على التواصل معي ...انا دخلت على المستخدم sys ونفذت ال -- لل UTL_MAIL @ c:\prvtmail.plb; @ c:\utlmail.sql; -- لل UTL_SMTP @ c:\prvtSMTP.plb; @ c:\utlSMTP.sql; -- لل UTL_TCP @ c:\prvtTCP.plb; @ c:\utlTCP.sql; وايضا نفذت الاكواد السابقة ولله الحمد نجحت ولكن أريد ان اسألك لماذا تتوجه الرسائل الى ال Junk Email بدل ال Inboxوايضا اريد بعث نص الرسالة الى الايميل على شكل باراميتر اي ما اريد النص ثابت ؟؟؟؟؟ايضا بالنسبة للشاشة التي ارفقتها كيف يتم تشغيلها انا فقط غيرت الايميل بتاعك الى ايميلي عند الضغط على الزر وايضا عملت ملف مرفق في نفس المسارولكن لا اعرف اين اضع اعدادات السيرفر اللذي لدي ؟؟؟؟؟؟؟يا ريت تشرح لنا الطريقة ....بارك الله بك اخي الغالي تم تعديل 25 يناير 201016 سنة بواسطة المقنع2005 تقديم بلاغ
بتاريخ: 25 يناير 201016 سنة comment_183319 السلام عليكم ،،،بالنسبة لل Junk mail يمكنك مراجعة الإعدادات الخاصة به من خلال Tools >>> Options >>> Preference Tab >>> Press Junk mail Button طبعاً هذا الكلام عن طريق ال outlookأو من اعلى الرسالة الي في ال Junk mail اضغط على move this message to the inbox folder بعد ذلك ستصبح الرسائل المرسلة من هذا الإيميل موثوق بها وتذهب مباشرةالى ال Inbox Folderاما بالنسبة لكيفية عمل ال form المرفقة فهي كما يلي:sender : ضع فيه ايميل المرسلrecipient : ضع فيه ايميل المرسل اليهsubject : موضوع الرسالةoutgoing mail server smtp : اعدادات ال smtp لإيميل المرسلmessage : نص الرسالة المرسلة و الله الموفق ،،، تقديم بلاغ
بتاريخ: 26 يناير 201016 سنة كاتب الموضوع comment_183343 اخي العزيز رعود بالنسبة لشاشتك هي تحتوي على mail_pkg.logon('Configuraciones de Microsoft Exchange'); mail_pkg.send('[email protected]','Subject','Massege','c:\xxx.xls'); mail_pkg.logoff; فأين اضع اعدادات ال stmp ؟؟؟؟؟ايضا اريد ان اسألك انا استخدمت كود ال UTL_TCP بس المشكلة لما تصل الرسالة لا يظهر لي FROM و TO بالرغم من اني ببعثهم في البروسيجر .؟؟؟ تقديم بلاغ
بتاريخ: 26 يناير 201016 سنة comment_183357 السلام عليكم ،،،أخي العزيز ...أولاً / الكود هذا ليس من الشاشة التي ارفقتها فضلاً اعد انزال الشاشةثانباً / ارسلي الكود المكتوب لل UTL_TCP حتى اعرف فين المشكلةوالله ولي التوفيق ،،، تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.