ورود

View Full Version : تبدیل اطلاعات داخل بانک اطلاعاتی به کد



soheilbehro
یک شنبه 03 آبان 1388, 19:41 عصر
من یه بانک اطلاعاتی دارم که دارای تعدادی فیلد و رکورد است، می خواستم ببینم که امکان داره یک جا همه ی اطلاعات بانک را به کد تبدیل کنم و اگه امکان داره چه طوری در ضمن من می تونم یه تکست باکس رو به کد تبدیل کنم ولی اینجا می خواهم کل بانک رو به کد تبدیل کنم

xxxxx_xxxxx
دوشنبه 04 آبان 1388, 00:00 صبح
دو تا روال نیاز دارید. یکی برای کد کردن (Encode) و یکی برای دیکد کردن (Decode)
این دو تا Sub رو به صورت عمومی تعریف کنید. هر داده ای که خواستید تو بانک ذخیره بشه اول به روال Encode بدیدش بعد ذخیرش کنید. و وقتی اطلاعات کد شده از db رو می خونید اول به روال Decode بدید بعد نمایش بدید.

این دو روال رو خودتون باید طراحی کنید. هر دو Function هستند و هر دو یک رشته دریافت می کنند و یک رشته برمیگردونند.

karbon2010
پنج شنبه 08 بهمن 1388, 22:36 عصر
سلام
میشه یک توضیح مفصل بدهید و اگر هم که امکانش بود سورسی و.....
ممنونتان میشم دوست بزرگوارم
یا علی

xxxxx_xxxxx
جمعه 09 بهمن 1388, 00:39 صبح
در ساده ترین حالت این میتونه دو روال کد کردن و دیکد کردن باشه:


Private Sub Command1_Click()
Dim CodeStr As String
For i = 1 To Len(Text1.Text)
CodeStr = CodeStr + Chr(Asc(Mid(Text1.Text, i, 1)) + 6)
Next i
Text2.Text = CodeStr
End Sub

Private Sub Command2_Click()
Dim CodeStr As String
For i = 1 To Len(Text2.Text)
CodeStr = CodeStr + Chr(Asc(Mid(Text2.Text, i, 1)) - 6)
Next i
Text3.Text = CodeStr
End Sub

توضیح:
کاراکترهای Text1 رو یکی یکی میخونیم و به کد اسکی اونها 6 واحد اضافه می کنیم. رشته حاصل، میشه رشته کد شده ما که تو Text2 قرار میدیم.

برای دیکد کردن هم باز تو یک حلقه همین کارو انجام میدیم. کاراکتر به کاراکتر از Text2 میخونیم، اما اینبار 6 واحد از کد اسکی هر کاراکتر کم می کنیم تا رشته اولیه بدست بیاد. و در Text3 قرار میدیم

برنامه رو از ضمیمه دانلود کنید.

karbon2010
جمعه 09 بهمن 1388, 08:16 صبح
سلام
ممنون از شما
من کم وبیشی با این کد اشنا شده بودم اما نمی دونستم برای چی فاصله ها را حساب نمی کرد و کلمه بعد ازدیکد فاصله بین کلمات از بین می رفت
سورس را دانلود کردم و مشکلم رفع شد
ممنون

soheilbehro
سه شنبه 30 آذر 1389, 11:31 صبح
در ساده ترین حالت این میتونه دو روال کد کردن و دیکد کردن باشه:


Private Sub Command1_Click()
Dim CodeStr As String
For i = 1 To Len(Text1.Text)
CodeStr = CodeStr + Chr(Asc(Mid(Text1.Text, i, 1)) + 6)
Next i
Text2.Text = CodeStr
End Sub

Private Sub Command2_Click()
Dim CodeStr As String
For i = 1 To Len(Text2.Text)
CodeStr = CodeStr + Chr(Asc(Mid(Text2.Text, i, 1)) - 6)
Next i
Text3.Text = CodeStr
End Sub

توضیح:
کاراکترهای Text1 رو یکی یکی میخونیم و به کد اسکی اونها 6 واحد اضافه می کنیم. رشته حاصل، میشه رشته کد شده ما که تو Text2 قرار میدیم.

برای دیکد کردن هم باز تو یک حلقه همین کارو انجام میدیم. کاراکتر به کاراکتر از Text2 میخونیم، اما اینبار 6 واحد از کد اسکی هر کاراکتر کم می کنیم تا رشته اولیه بدست بیاد. و در Text3 قرار میدیم

برنامه رو از ضمیمه دانلود کنید.


این برنامه شما خوبه
ولی دوست من در عرض 2 ثانیه هکش کرد
اون اومد یه عدد داد و الگوریتم ما رو فهمید که +6 می کنیم
اگه میشه یه الگوریتم قوی تر بزارین

xxxxx_xxxxx
سه شنبه 30 آذر 1389, 19:22 عصر
سلام،

این برنامه شما خوبه
ولی دوست من در عرض 2 ثانیه هکش کرد
اون اومد یه عدد داد و الگوریتم ما رو فهمید که +6 می کنیم
اگه میشه یه الگوریتم قوی تر بزارین

اون برنامه اصلاً هم خوب نیست. من گفتم در ساده ترین حالت ... . اونو فقط برای نشون دادن نحوه کار گفتم و گرنه هیچ امنیتی نداره.

قبلاً در تاپیک زیر در مورد این موضوع بحث شده، میتونید تاپیک زیر رو مرور کنید. (از اول تا آخر)
دانلود برنامه کد کننده ی متن (برای کد کردن نامه های محرمانه) (http://barnamenevis.org/showthread.php?229060)