یادداشت های برنامه نویس آماتور | Amateur programmer notes
61 subscribers
92 photos
10 videos
34 files
88 links
اندازه ی آرزو هات مهم نیست
مهم اینه تو چقد میبینیش
آرزو هاتو بزرگ ببین


</create> by <ashkan\>
Download Telegram
✨دبیان، انتخاب جدید گوگل به عنوان سیستم عامل داخلی✨

شرکت گوگل سال ها از توزیع اختصاصی خود با نام Goobuntu که یک توزیع مبتنی بر Ubuntu بود به عنوان پلتفرم توسعه نرم افزار استفاده می نمود اما از مدتی پیش گوگل پروژه مهاجرت به توزیع جدیدی مبتنی بر Debian را آغاز نموده است.
این توزیع مبتنی بر نسخه در حال توسعه Debian 10 ( با نام کد Buster ) ایجاد شده است و gLinux نام دارد.
گوگل قصد دارد تغییرات را برای توسعه دهندگان Debian ارسال کند از این رو گوگل نیز در توسعه Debian 10 مشارکت مستقیم دارد.
خبر رسمی در خصوص علت این مهاجرت منتشر نشده است و البته همان گونه که می دانید گوگل هیچ گاه کارمندان خود را به استفاده از سیستم عامل خاصی اجبار نمی کند اما همواره توزیع های مختلف لینوکس برای اکثر آن ها در اولویت قرار دارد.
SQLServer

امروز یکی از دوستانم پرسشی از من کرد مبنی بر اینکه سریعترین راه ممکن برای مشاهده دسترسی های مربوط به یک لاگین (در سطح سرور) و یوزر (در سطح دیتابیس) چیست؟

پاسخ سوال کوئری های فسقلی زیر است

—------------------------------------
—------------------------------------
SELECT * FROM fn_my_permissions(NULL, 'SERVER')
نمونه خروجی
entity_name subentity_name permission_name
server CONNECT SQL
server SHUTDOWN
server CREATE ENDPOINT
server CREATE ANY DATABASE
server CREATE AVAILABILITY GROUP
server ALTER ANY LOGIN
—------------------------------------
—------------------------------------
USE YourDatabase
SELECT * FROM fn_my_permissions (NULL, 'DATABASE')
GO

نمونه خروجی
entity_name subentity_name permission_name
database CREATE TABLE
database CREATE VIEW
database CREATE PROCEDURE
database CREATE FUNCTION
database CREATE RULE


✍mr.ashkan
بررسی اتصال به اینترنت :👇
1-1)بررسی اتصال به اینترنت
برای انجام هرکار با اینترنت جهت جلوگیری از خطاهای احتمالی ابتدا باید بررسی کنیم ایا دستگاه به اینترنت متصل هست یا نه. پس در اکتیویتی در ابتدا دو کد زیر رو بنویسید.
Context myContext = null;
ConnectivityManager connectMngr = myContext.getSystemService(Context.CONNECTIVITY_SERVICE);

خب برای فهم کد بالا خیلی ساده بهش نگاه میکنیم. ابتدا Context تعریف کردیم و همانطور که قبلا گفتم این کلاس میشه گفت وضعیت کنونی رو به ما برمیگردونه. یک نمونه ازش گرفتم و مقدار اولیه اون رو برابر null گذاشتم.

بعد از آن از کلاس ConnectivityManager استفاده کردم. این کلاس مدیریتی از اتصالات دستگاه رو به ما میده. یک نمونه ازش گرفتم. برای مقدار دهی دقیقا این رو گفتم: "از وضعیت کنونی دستگاه، سرویس Connectivity رو از وضعیت دستگاه گرفته و اون رو بعنوان یک سیستم سرویس به من بده"

متد getSystemService، یک متد از context هست که یک ورودی میگیره و در نهایت با توجه به ورودی که بهش میدیم به ما اون سرویس رومیده. توجه کنید که خروجی این متد از نوع Object هست. پس باید از Cast کردن استفاده کنیم تا بتونیم مقدارش رو در connectMngr ذخیره کنیم:
ConnectivityManager connectMngr = (ConnectivityManager) myContext.getSystemService(Context.CONNECTIVITY_SERVICE);

خب تا الان ما تمام سرویس های Connect رو داخل connectMngr داریم. اما ما تنها الان اطلاعاتی از شبکه رو لازم داریم. که به این میگند NetworkInfo. پس کافیه کد زیر رو بنویسید تا از connectMngr اطلاعات شبکه رو گرفته و داخل یک شی از NetworkInfo ذخیره کنه:
NetworkInfo netInfo = connectMngr.getActiveNetworkInfo();

خب حالا برای بررسی شرط اتصال به اینترنت داخل متد Onclick کد زیر رو بنویسید:
if(netInfo == null || netInfo.isAvailable() == false || netInfo.isConnected() == false){
Toast.makeText(getApplicationContext(),"No Internet!",Toast.LENGTH_LONG);
}

اول از همه جهت یاداوری دوستان جهت بررسی یک شرط در جاوا (بیس اندروید) از if استفاده میکنیم.
If(some condition)
{ Do something }

جهت بررسی یک شرط در جاوا از if استفاده میکنیم و شرط مورد نظر داخل پرانتز قرار داده میشود. سپس بررسی میکنیم اگر شرطی برقرار است کارهای مورد نظر ما داخل {} نوشته میشود.
شرطهایی که بررسی کردیم
1)netInfo == null : اگر هیچ شبکه ای موجور نیست.
2)netInfo.isAvailable() == false: یعنی اگر شبکه فعال نیست
3)netInfo.isConnected() == false: یعنی اگر شبکه متصل نیست

این نکته رو هم بگم که در شرط ها اگر بین چند شرط "یا" برقرار بود یعنی در نظر داشتیم یکی از شرطها هم حتی اگر برقرار بود عملیات ما انجام شود، بین آنها علامت || میگذاریم.
همچنین اگر مورد نظر ما بود که تمام شرطها حتما برقرار باشند همزمان تا کاری را انجام دهیم، بین آنها && میگذاریم.

در اخر اینکه در بررسی شرطها علامت تساوی (آیا مساوی بودن!؟)
بصورت == قرار داده میشود
خب حالا بعد از بررسی شرط ها میخواهیم بگیم اگر یکی از اینها هم برقرار بود یعنی اینترنت متصل نیست، پس پیامی رو به کاربر نشون دادیم.
خب درغیر اینصورت اینترنت وصل هست پس میشه صفحه اینترنت رو باز کنیم.

حالا کد زیر رو اضافه کنید:
else {
Toast.makeText(getApplicationContext(),"You are Connectedd",Toast.LENGTH_LONG);
}
زمانی که شرطی رو بررسی میکنیم و میخوایم بگیم اگر if مطرح شده برقرار نبود در غیر اینصورت چکاری انجام بده، از else استفاده میکنیم.
فعلا داخل else نوشتم یک پیام نشون بده که به اینترنت متصل هستید.

2-1) تنها چیزی که نباید فراموش بشود اجازه گرفتن از کاربر هست. که میخواهیم از اینترنت اون فرد استفاده کنیم. این permission ها رو در manifest قرار بدید.
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>

کافی هست از برنامتون اجرا بگیرید و تست کنید.

1-3)حالا در این مرحله باید داخل else صفحه مورد نظر را باز کنیم. اگر به یاد داشته باشید intent ها درخواست ما از اندروید بودند. درحال حاضر ما درخواست باز کردن یک صفحه وب رو داریم. از کد زیر استفاده میکنیم:
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.google.com"));
startActivity(intent);
این نوع خاصی از intent هست. ورودی اول نوعش رو مشخص کرده و ورودی دوم یک متد هست به نام Parse. این متد در کلاس Uri قرار دارد. یک ورودی رشته ای (string) گرفته و اون رو تبدیل به یک uri معتبر میکند. در اخر هم Intent خود رو اجرا کردیم.
برای جلوگیری از سرقت هویت از وارد کردن اطلاعات شخصی در سایت ها و صفحات گم نام خودداری کنید.
بیشتر بدانید!
زبان فارسی رسما به تلگرام افزوده شد!
⛔️ از اپلیکیشن جعلی تلگرام که به سرعت در حال انتشار است، بیشتر بدانیم:

▫️ صرفاً برای اندروید طراحی شده و کاربران اپل از گزند آن در امان هستند.

▫️ همه علائم و مراحل شبیه مراحل نصب تلگرام است.

▫️ به شکل دعوت برای سرویس تماس صوتی و تصویری، استفاده از سرویس Nearby و پیدا کردن کاربران بر اساس موقعیت مکانی و اضافه شدن لایو استوری به تلگرام است.

▫️ لینک‌های دعوت برای نصب، به صفحه مشابهی نظیر تلگرام می‌رسند که آدرس آن به جای telegram.org آدرس telgram.vip است.

▫️ حتی اگر ورود دو مرحله‌ای را فعال کرده باشید به دلیل شباهت‌ها، کاربر فریب فضای مشابه را خورده و رمز دوم را نیز وارد و فاش می‌کند.

▫️ روش اشاعه: بلافاصله پس از نصب و گرفتن دسترسی، به صورت خودکار به حداقل ۱۰۰ کاربر همان پیام اولیه که کاربر آن را گرفته، ارسال می‌کند.

▫️ فهرست مخاطبین پیام‌های مخرب ارسالی از گوشی‌هایی که این اپ را نصب کرده‌اند، هیچ قاعده خاصی ندارد.

▫️کاربران دیگر به همین روش، به آلوده کردن دستگاه‌های دیگر دست می‌زنند بدون اینکه قصد ارسال داشته باشند.

▫️ بلافاصله پس از ارسال پیام‌ها، کاربر ارسال کننده ریپورت خواهد شد. پس از گزارش وضعیت بخواهید.

▫️حتما پیام‌های ارسالی به دیگران را پاک کنید به طوری از فهرست پیام‌های طرفین حذف شود.

▫️ حتما اکتیو سژن را پایان دهید و به فعالیت حسابتان روی دستگاه‌های دیگر خاتمه دهید.

▫️ فورا رمز دوم را تغییر دهید و لاگ آوت کرده و مجدد از تلگرام کد فعالسازی بگیرید.

▫️ اگر فیلترشکن شما روشن باشد کد فعالسازی را دریافت نخواهید کرد. پس دقت کنید فیلترشکن فعال نباشد.

اگر این توضیحات را مفید می‌دانید، پست را برای دوستانتان ارسال کنید.
NETFLIX PREMIUM ACCOUNTS

linni143@gmail.com:linni143
rod3333@hotmail.com:bill2005
rosapayton18@yahoo.com:preston2011
apryl_marykay1@yahoo.com:800freak
jeanlacoe@comcast.net:jeanbean
travis_smith2009@yahoo.com:soccer
tng1114@gmail.com:trieu1114
md-lcsw@cox.net:jbon007d
terigal@gmail.com:mtjd3104
R-e-b-u@hotmail.com:boyete
darkxyster@gmail.com:dirksmith
jschmalz1@new.rr.com:josh0816
aveader@gmail.com:winston3
jesusv107@gmail.com:cataleah25
kate.tr76@gmail.com:mama1976
farid.assali@yahoo.com:040282fa
tamanda02@gmail.com:sadie4270
ladyblackcat2@hotmail.com:ihateyou1
nyyankee1953@gmail.com:maclex11
sjraider81@yahoo.com:rocket15
tamram59@yahoo.com:sweetie04
chase.a.pipkin@gmail.com:chase92
tjkrueger88@gmail.com:sivart321
bkwojton@yahoo.com:Gizmo1983
alex_59701@mail.com:Jraf4kag
alexiabanks93@gmail.com:alexia93
novojilov@gmail.com:zx1290op
karina.burchard@gmail.com:surfing6
cninemire@hotmail.com:judging
portosplace@msn.com:matt1019
marek103@yahoo.com:marek101
sreith@fuse.net:polaris99
michaelcl86@yahoo.com:10021986
sweetkiran07@yahoo.com:sweetwahid
dionisia.hayles@gmail.com:keneshia

😊😊😊😊
Happy Valentine's Day! I see some good art in trending stickers, be sure to check it out.
✔️ بزرگترین حمله DDoS به وب سایت GitHub که تاکنون ثبت شده در تاریخ 28 فوریه (چهارشنبه 9 اسفند) با حجم 1.35 ترا بیت بر ثانیه اتفاق افتاد.
آموزش نوشتن سورس در سطح مبتدی🙂

➖➖➖➕➖➖➖
//ابتدا تابعی برای گذاشتن توکن تعریف میکنیم مانند تابع زیر
define('API_KEY','توکن ربات شما');
//فانکشن
function sssteam($method,$datas=[]){
$url = "".API_KEY."/".$method;
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch,CURLOPT_POSTFIELDS,http_build_query($datas));
$res = curl_exec($ch);
if(curl_error($ch)){
var_dump(curl_error($ch));
}else{
return json_decode($res);
}
}
//حالا متغیری برای تعریف اپدیت ها میزاریم
$update = json_decode(file_get_contents('php://input'));
//حالا کد های زیر رو در سورس قرار میدیم
$text = $update->message->text;
$chat_id = $update->message->chat->id;
$message_id = $update->message->message_id;
//حالا متن استارت را تعیین خواهیم کرد
if ($text == '/start'){
Gigatm('sendMessage',[
'chat_id'=>$chat_id,
'text'=>"متن استارت"
]);
}
?>
➖➖➖➕➖➖➖
اسکی آزاد ولی با ذکر منبع😐🙂
شركت فيس بوك اعلام كرد براي حفظ حريم شخصی كاربران در آپديت جديدش گزينه Save Photo و Screen Shot را حذف خواهد كرد!
After a Year, Many things change ...
After a Year, Many good or bad people aren't Exist ...
After a Year, lots of children become Exist ...
After a Year, You are able to do new things ...
After a Year, You may not be able to do things that you could do in the past ...
After a Year, Everything become new ...
After Winter, Spring Starts
After Dark, it's light !
but Now after All it's time to say Happy Noruz Iran and have a Good time with your family :D ! 🇮🇷🌾

mr.ashkan
2018/1397
This week, over 700,000 new users are signing up for Telegram each day. The annual user growth of Telegram surpassed 70% YoY in most markets.

With so many new people joining, not every user may have a clear understanding about what Telegram stands for.

That’s why when announcing the 200M milestone last week, I used the opportunity to write a bit about the values of Telegram and what drives us forward.

https://telegram.org/blog/200-million
Channel++.zip
33.3 KB
سورس ربات مدیریت کانال
با امکان ارسال پست به صورت ساعتی و تایم دار

نویسنده : mr.ashkan ✍
#تیکه کد ساخت کیبورد
//=====
$menu = json_encode(['keyboard'=>[
[['text'=>'نام دکمه مورد نظر'],['text'=>'نام دکمه مورد نظر']],
],"resize_keyboard"=>true]);

#mr.ashkan
Forwarded from Pavel Durov
The power that local governments have over IT corporations is based on money. At any given moment, a government can crash their stocks by threatening to block revenue streams from its markets and thus force these companies to do strange things (remember how last year Apple moved iCloud servers to China).

At Telegram, we have the luxury of not caring about revenue streams or ad sales. Privacy is not for sale, and human rights should not be compromised out of fear or greed.