View Full Version : ارسال متن پیامک فارسی از طریق sql
hrj1981
سه شنبه 02 شهریور 1395, 19:41 عصر
با درود
دوستان من تو اینترنت این sp رو پیدا کردم که با گذاشتن یک url ارسال پیامک میشه مستقیم از داخل خود sql نسبت به ارسال مسیج اقدام کرد اما ایرادی که داشت و من هر کاری کردم درست نشد ، نتونستم متن فارسی باهاش ارسال کنم و متن فارسی که تو متن پیامک میزارم به صورت کاراکتر های ? ارسال میشه
ممنونم میشم دوستان راهنمایی کنند
Declare @Object as Int;
Declare @ResponseText as nvarchar(4000);
Exec sp_OACreate 'MSXML2.XMLHTTP', @Object OUT;
Exec sp_OAMethod @Object,'open',NULL,'get',@sUrl,'false'
Exec sp_OAMethod @Object, 'Send'
Exec sp_OAMethod @Object, 'responseText', @ResponseText OUTPUT
Select @ResponseText
Exec sp_OADestroy @Object
hrj1981
پنج شنبه 04 شهریور 1395, 12:59 عصر
با درود
پیرو مبحث بالا من یه روشی درست کردم که نمیدونم اصلا اصولی هست یا نه ، اما تونستم باهاش سوال بالا رو حل کنم
اول اینکه اومدم یک جدول درست کردم که توش معادل url هر کاراکتر فارسی رو قرار دادم که جدولشم میتونید از ضمیمه بردارید
بعد فانکشن زیر نوشتم
ALTER FUNCTION [dbo].[Fu_dotnet_Sys_DecodeUrl]
(
@_Url nvarchar(MAX)=NULL
)
RETURNS VARCHAR(1000)
AS
BEGIN
IF @_Url IS NULL OR @_Url=''
BEGIN RETURN NULL END
ELSE
DECLARE @_Position SMALLINT=1
DECLARE @_Ret VARCHAR(MAX)=''
WHILE @_Position <= ISNULL(LEN(@_Url), '')
BEGIN
SET @_Ret=@_Ret + (SELECT dbo.Tbl_dotnet_UrlDcode.Ht_C FROM dbo.Tbl_dotnet_UrlDcode
WHERE (dbo.Tbl_dotnet_UrlDcode.Fa_C=SUBSTRING(@_Url,@_Po sition,1)))
SET @_Position=(@_Position+1)
END
RETURN @_Ret;
END
که میاد متن مسیج فارسی رو برای Sp پست اول به url دیکد میکنه و مابقی ماجرا ...
اما چند تا سوال برام هنوز حل نشده
1 ) آیا برای ارسال پیامک واقعا صحیحه که از خود Sql استفاده کنیم
2) من هنوز معادل دیکد Enter رو پیدا نکردم ( برای مسیج های چند خطی)
Valadi
جمعه 05 شهریور 1395, 08:01 صبح
من براي اين كار يك راحل پيدا كردم و از داخل sql server ميفرسته
hrj1981
جمعه 05 شهریور 1395, 08:10 صبح
من براي اين كار يك راحل پيدا كردم و از داخل sql server ميفرسته
خوشحال میشم راهنمایی کنید
hrj1981
جمعه 05 شهریور 1395, 08:15 صبح
من خودم برای جواب سوال دومم (2) من هنوز معادل دیکد Enter رو پیدا نکردم ( برای مسیج های چند خطی)) به این فکر کردم که یک کاراکتر جایگزین (مثلا کاراکتر @) بزارم و معادل اون رو تو جدول برابر با معادل دیکود enter قرار بدم ، تست کردم جواب داد
hrj1981
جمعه 05 شهریور 1395, 08:20 صبح
اصلاح شده جدول معادل های دیکد url
ali.yarmohammadi
شنبه 07 مهر 1397, 18:15 عصر
اصلاح شده جدول معادل های دیکد url
سلام دوست عزیز
از قطعه کدی که در سایت قرار دادید ممنونم
فقط یک مورد برخوردم.اینکه متن پیام اگر از یک اس ام اس بیشتر شود فقط اس ام اس اول ارسال میشود
در صورتی که همین متن را در url سرویس دهنده اس ام اس بصورت مستقیم در مرورگر اجرا کنم اس ام اس کامل ارسال میشود
ممنون میشم در صورتی که راه حلی داشتیت کمکم کنید
با تشکر
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.