نمایش نتایج 1 تا 15 از 15

نام تاپیک: آموزش کامل curl یا شبیه سازی لوگین کردن به یک سایت ؟؟؟

  1. #1

    آموزش کامل curl یا شبیه سازی لوگین کردن به یک سایت ؟؟؟

    سلام به همه برنامه نویسا حرفه ای ها مبتدی ها آشفته ها ( مثل من )

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

    من و یک سری از دوستام مسئول انجمن علمی کامپیوتر دانشگاه خودمون که دانشگاه ساری و به دست گرفتیم

    اولین کاری که میخوایم بکنیم اینه که عضویت و اینترنتی کنیم تا به بچه ها حتی تو تابستان دسترسی داشته باشیم

    واسه این کارمون چندتا مشکل داریم

    که مهم ترینش نداشتن اطلاعات کامل برنامه نویسی چون من تازه پی اچ پی و شروع کردم
    مشک در ثبت نام اینه که ما میخوایم دردسر اسکن عکس و شناسنامه و اینارو حذف کنیم برای ثبت نام کننده ها

    بعدی اینه که مابرامون ملاک که خود فرد که داره ثبت نام میکنه همون فردی باشه که شماره دانشجویی و به عنوان نام کاربری وارد میکنه
    در واقع مثلا من شماره دانشجویی دوست و اسم و شماره شناسنامه و ایناره درم اما دوستم نیستم که !
    واس این احراز هویت برامون شدید مهمه
    در واقع میخوایم پرتال راه اندازی کنیم

    دانشگاه ما دوتا سرور داره واسه ورود به پنل دانشجویی که دوتا آدرس :

    http://217.219.175.74/
    http://217.219.175.74/

    کا دانشجو وارد میشه و مشخصات خودشو وارد میکنه و اگه درست بد وارد پنل میشه که توش مشخصات فردی و رشته و مقطع نوشته مثل عکس های زیر ه مشخصات من نوشته :





    میخوام تو سایت انجمن یک فرم بزارم که 2 تا فیلد داره به نام شماره دانشجویی و کلمه عبور

    این شماره دانشجویی و کلمه عبور و بگیره و تو سرور بفرسته با سایت دانشگه یعنی عمل :

    رفتن به سایت دانشگاه http://217.219.175.74/Portal/WUC/Sec...loginPage.aspx
    یا اون یکی سرور http://217.219.175.73/login.aspx
    و وارد کردن شماره دانشجویی و کلمه عبور و وارد کنه
    و بعد از اینکه ورد سایت شد یا اینکه

    صفحه http://217.219.175.74/University.aspx که صفحه اصلی سایت باز شد
    یا : http://217.219.175.73/Default.aspx
    این صفحه و توی یجایی ذخیره کنه تا ما توی صفحه بگردیم و نام نام خانوادگی شماره دانشجویی مقطع و .. در بیاریم.


    انجام بد...

    با asp request دادیم اما نتیجه نگرفتیم

    خیلی روش کار کردیم
    اما میشه چون یکی از بچه ها این کارو قبلا انجام داده اما با ما همکاری نمیکنه
    من اولین باری که اسم تابع curl و شنیدم فهمیدم که کارش اینه که سایتی و که روبروته داری میبینی و میگیره تو سرور باز مینه و یتونی تو فایل ذخیره کنی اونم با هر پسوندی متل متنی

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

    http://127.0.0.1/check.php

    این صفح و من نوشتم که اطلاعات و از طریق پست میگیره و کدش اینه :


    $
    u = @$_POST['user'];
    $p = @$_POST['pass'];
    if($u=='m2soft' && $p=='123456')
    echo "login";
    else
    echo "error";



    با این همه جستجو حتی نتونستم این و تست کنم که با یک فرم دیگه مقدار بدم و ببینم چه اروری میده یا وارد میشه

    یک کلک دیگه خواستم بزنم اینکه یک فریم درست کنم که توش سایت داشگاه باز بشه
    و دانشجو اطلاعاتشو وارد کنه و تو یک حلق از فرم اصلی چک کنه که اگه url فریم تغییر کرد و به صفحه default.aspx رسید
    یعنی وارد شد فریم قفل بشه و از کل صفح که شامل فریم و فرم اصلی ذخیره بشه تا بشه اطلاعات و در آورد اما اونم نتونستم
    داره بدم میاد از برنامه نویسی خیلی سعی کردم اما نتونستم

    گفتیم بیایمیک دستگاه بارکد خوان بخریم بچسب.نیم دم در دفتر انجمن که دانشجو بیاد کارتشو بکشه و برنامه ای که نو میکروپروسسور نوشتست بیاد شماره دانشجویی که تو کارت هست و رمز کنه و کد کنه در واقع یک کد ثبت نام بده و دانشجو بیاد شماره دانشجویی و کد ثبت نام و بده و کد پبت نام و دی کد کنیم اگه با شماره دانشجویی یکی بود یعنی این خود دانشجو بود که اومد کد گرفت و اجازه ثبت نام بدیم اما اینجوری دیگه آنلاین نیست و نیاز به مراجعه داره یکی کمک کنیه اگه کسی میتونیه من شماره دانشچویی خودم و میدم نا مشکلم رفع کنه لطفا کمک کنید

  2. #2

    نقل قول: آموزش کامل curl یا شبیه سازی لوگین کردن به یک سایت ؟؟؟

    راستی یکی اینجا تو انحمن از سوکت پروگرامینگ گفت و پورت 80
    دوستم همونی که قبلا تونست این کار و انجام بده قبلا همیک کارو کرده بود یعنی با پورت 80

    میشه تو ضیح بدین این روش یا هرچی که میشه

    http://www.iranphp.net/forum/showthr...highlight=curl

  3. #3
    کاربر دائمی آواتار pashaie
    تاریخ عضویت
    تیر 1387
    محل زندگی
    کرج
    سن
    37
    پست
    187

    نقل قول: آموزش کامل curl یا شبیه سازی لوگین کردن به یک سایت ؟؟؟

    کد لاگین کردن به صورت ریموت به یه سایت

    $login_url = 'http://www.somesite.com/login.php';
    #These are the post data username and password
    $post_data = 'username=someusername&password=somepassword';
    #Create a curl object
    $ch = curl_init();
    #Set the useragent
    $agent = $_SERVER["HTTP_USER_AGENT"];
    curl_setopt($ch, CURLOPT_USERAGENT, $agent);
    #Set the URL
    curl_setopt($ch, CURLOPT_URL, $login_url );
    #This is a POST query
    curl_setopt($ch, CURLOPT_POST, 1 );
    #Set the post data
    curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
    #We want the content after the query
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    #Follow Location redirects
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    /*
    Set the cookie storing files
    Cookie files are necessary since we are logging and session data needs to be saved
    */
    curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
    curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt');
    #Execute the action to login
    $postResult = curl_exec($ch);

  4. #4

    نقل قول: آموزش کامل curl یا شبیه سازی لوگین کردن به یک سایت ؟؟؟

    سلام
    دوستان من با تابع curl زیاد آشنایی ندارم،
    میشه یه توضیح مختصر در موردش بدید، و بگید اگه من بخوام یاد بگیرم چه مرجع فارسی هست که بتونم ازش استفاده کنم

  5. #5

    نقل قول: آموزش کامل curl یا شبیه سازی لوگین کردن به یک سایت ؟؟؟

    نقل قول نوشته شده توسط pashaie مشاهده تاپیک
    کد لاگین کردن به صورت ریموت به یه سایت

    $login_url = 'http://www.somesite.com/login.php';
    #These are the post data username and password
    $post_data = 'username=someusername&password=somepassword';
    C#‎‎reate a curl object
    $ch = curl_init();
    #Set the useragent
    $agent = $_SERVER["HTTP_USER_AGENT"];
    curl_setopt($ch, CURLOPT_USERAGENT, $agent);
    #Set the URL
    curl_setopt($ch, CURLOPT_URL, $login_url );
    #This is a POST query
    curl_setopt($ch, CURLOPT_POST, 1 );
    #Set the post data
    curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
    #We want the content after the query
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    #Follow Location redirects
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    /*
    Set the cookie storing files
    Cookie files are necessary since we are logging and session data needs to be saved
    */
    curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
    curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt');
    #Execute the action to login
    $postResult = curl_exec($ch);
    ممنون که جواب دادین شما این کد و با سایت دانشگاه ما انجام دادین ؟

    یبار سورس صفحه و ببینید چندتا فیلد مخفی هست که کد شده هستند و رندوم

    این کدی که شما دادین و قبلا دیدم
    میشه کلا روش کار توضیح بدین
    اینجا انجمن درست اما خوب یکی کلا ندونه اینجوری که راه نمیوفته

  6. #6
    کاربر دائمی آواتار pashaie
    تاریخ عضویت
    تیر 1387
    محل زندگی
    کرج
    سن
    37
    پست
    187

    نقل قول: آموزش کامل curl یا شبیه سازی لوگین کردن به یک سایت ؟؟؟

    یبار سورس صفحه و ببینید چندتا فیلد مخفی هست که کد شده هستند و رندوم
    آره! اینم از برکات ASP!
    خب واسه حل این مشکل یه راه خیلی ساده وجود داره.
    شما ابتدا صفحه مورد نظرو (http://217.219.175.74/Portal/WUC/Sec...loginPage.aspx) تو برنامت لود می کنی (این کار رو هم می تونی با تابع CURL انجام بدی) بعد تو مقدار بدست اومده دنبال مقادیر Hidden می گردی و در آخر سر هم از همون کد بالایی استفاده می کنی با این تفاوت که اینبار مقادیر Hidden رو هم برای سایت مورد نظر ارسال می کنی

  7. #7

    نقل قول: آموزش کامل curl یا شبیه سازی لوگین کردن به یک سایت ؟؟؟

    این سیستم (فکر کنم سیدا بود) رو حرفه ای ساختند با اینکه مثل بقیه سیستمهای ایرانی پر از باگهای زننده و مبتدیانه است.
    اونجوری که بصورت اجمالی پستتون رو خوندم، شما میخواید با اطلاعات دانشجوها در سایت خودتون، در سایت دانشگاه بصورت ریموت لاگین کنید و اطلاعات بگیرید. اگر اینطوره:
    به نظر من، کل کاری که قصد انجامش رو دارید کاملا اشتباهه چون امنیت اطلاعات دانشجوها خیلی اهمیت داره و نباید جای دیگه ای وارد کنه! به این فکر کنید به سایت شما نفوذ بشه و طرف هم مریض روانی باشه بعد شما میتونید جوابگوی دانشجوهایی که درسهاشون حذف شده باشید؟
    هرقدر امکان خوبی ایجاد کنید ولی این مسئله خیلی مهمی هست.

    من خودم سایت گروه مهندسی صنایع دانشگاه خودمون راه انداختم. میخواستم فقط به روشی، صحت دانشجو رو از طریق شماره دانشجویی و رمزش تایید کنم و به این مسئله برخوردم که دانشجوها اطلاعاتشون رو وارد نکنند خیلی بهتره.

    به هر حال، همونطوری که دوستمون گفتند با بررسی فیلدهای hidden میشه مشکل لاگین رو حل کرد اگه این سیستم روش مبتکرانه خاصی برای جلوگیری از چنین کارهایی نداشته باشه.

  8. #8

    نقل قول: آموزش کامل curl یا شبیه سازی لوگین کردن به یک سایت ؟؟؟

    من تاعیدیشو گرفتم
    مشکل پیاده سازیهکسی هست که این پروِژه و انجام بده چون من سر در نمیارم

    آقایون با پرت 80 میشه وصل شد ؟ سوکت نویسی
    اون قضیش چیه
    ؟

  9. #9

    نقل قول: آموزش کامل curl یا شبیه سازی لوگین کردن به یک سایت ؟؟؟

    نه بابا این فکر میکنم یا میخاد ثبت واحد رو اتوماتیک کنه یا میخاد هک کنه! در هر حالت موفق باشی ;)

    فقط یادت باشه اگه زیاد و تند تند درخواست بفرستی حراست میاد!

  10. #10

    نقل قول: آموزش کامل curl یا شبیه سازی لوگین کردن به یک سایت ؟؟؟

    داداشی جون ؟؟

    میگم این کار با مسئولیت خودمه
    تحت نظر معاون پژوهشی دانششگاه
    حراست کیلویی چنده بابا....

    مشکل اینه که مسعولین ما این سیستم و از سیدا یا مثلا از مروارید خریدم هیچ دخل و تصرفی ندارن که مثلا یک لینک بدن به ما و میگن امنیتش مشکل میخوره

  11. #11

    نقل قول: آموزش کامل curl یا شبیه سازی لوگین کردن به یک سایت ؟؟؟

    نقل قول نوشته شده توسط $ M 3 H R D A D $ مشاهده تاپیک
    به ما میگن امنیتش مشکل میخوره
    خوب بیچاره ها حقم دارن که اینو بگن

  12. #12

    نقل قول: آموزش کامل curl یا شبیه سازی لوگین کردن به یک سایت ؟؟؟

    الان این سیستم که نصبه ثبت آنلاین نداره؟

  13. #13

    نقل قول: آموزش کامل curl یا شبیه سازی لوگین کردن به یک سایت ؟؟؟

    برادران !!! داداش ها !! سرووران !!!
    من کاری به ثبت مپت ندارم

    اطلاعات دانشجو ها تو بانک سایته!

    میخوام هر دانشجو تو سایت ما اطلاعاتشو بده من کوئری دادن و شلبیه سازی کنم که بعد از اینکه رفت تو پنلش اون صفحه و تو سرور باز کنم اسم و فامیلشو بگیرم تو سایت خودمون ثبت نام کنیم ازش !
    همین ! به خدا همین !
    کسی این پروژه ه انجام میده ؟

  14. #14

    نقل قول: آموزش کامل curl یا شبیه سازی لوگین کردن به یک سایت ؟؟؟

    راستی اون فیلد مخفی هم فکر کنم همیشه ثابته

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

    به نظرم میشه برای همه یک مقدار ثابت و فرستاد چون سرور مهم نیست این کد قبلا هم فرستاده شد یا نه
    دقیقا بر عکس اکتیو کردن نرم افزاره با این تفاوت که سیستم کد و جایی ذخیره نمیکنه

  15. #15

    نقل قول: آموزش کامل curl یا شبیه سازی لوگین کردن به یک سایت ؟؟؟

    آموزش CURL در PHP و چند کاربرد آن


    معرفی
    PHP از libcurl (کتابخانه ای که توسط Daniel Stenberg درست شده است) پشتیبانی می کند. این کتابخانه یه شما امکان اتصال به سرور ها مختلف با پروتکل های متفاوت را می دهد. libcurl در حال حاضر از پروتکل های http, https, ftp, gopher, telnet, dict, file و ldap پشتیبانی می کند. همچنین libcurl از HTTPS certificates, HTTP POST, HTTP PUT, FTP uploading, HTTP form based upload, proxies, cookies و user+password authentication پشتیبانی می کند.
    تابع ها .....
    ...........


    آموزش CURL در PHP و چند کاربرد آن

    تاریخ: 25اسفند89

    معرفی
    PHP از libcurl (کتابخانه ای که توسط Daniel Stenberg درست شده است) پشتیبانی می کند. این کتابخانه یه شما امکان اتصال به سرور ها مختلف با پروتکل های متفاوت را می دهد. libcurl در حال حاضر از پروتکل های http, https, ftp, gopher, telnet, dict, file و ldap پشتیبانی می کند. همچنین libcurl از HTTPS certificates, HTTP POST, HTTP PUT, FTP uploading, HTTP form based upload, proxies, cookies و user+password authentication پشتیبانی می کند.
    تابع های CURL از PHP 4.0.2 به بعد افزوده شده اند.

    موارد مورد نیاز
    نصب بسته libcurl (اینجا کلیک کنید. PHP به libcurl 7.0.2-beta یا بالاتر نیاز دارد.)
    libcurl 7.9.0 با بالاتر برای PHP 4.2.3
    libcurl 7.9.8 یا بالاتر برای PHP 4.3.0
    libcurl 7.10.5 یا بالاتر برای PHP 5.0.0

    توضیحات آموزشی
    بعد از راه اندازی PHP با پشتیبانی از CURL شما می توانید از تابع های CURL استفاده نمائید. اولین کاری که نیاز به انجام آن دارید استفاده از تابع curl_init() برای شروع یک session (جلسه) CURL است. سپس با استفاده از تابع curl_setopt() گزینه های مختلف (options) را set (تنظیم) نمائید. حال با استفاده از تابع curl_exec() می توانید session CURL را اجرا نمائید. در آخرین مرحله session CURL را با اجرای تابع curl_close() از بین ببرید.
    توابع CURL
    curl_close : بستن (از بین بردن؟) session CURL فعلی
    curl_copy_handle : کپی کردن یک CURL handle به همراه تمامی تنظیمات آن (از PHP 5 به بعد قابل استفاده می باشد)
    curl_errno : آخرین شماره خطا را باز می گرداند
    curl_error : آخرین خطای session فعلی را به صورت یک string (رشته) باز می گرداند
    curl_exec : اجرای CURL
    curl_getinfo : نمایش اطلاعات یک تبادل
    curl_init : شروع یک session جدید
    curl_setopt : تنظیم کردن (set) یک گزینه (option)
    curl_setopt_array : تنظیم کردن (set) همزمان چند گزینه مختلف (options)
    curl_version : نسخه CURL مورد استفاده را باز می گرداند.
    مثال ها



    1- چگونه header را با استفاده از cURL بدست آوريم ؟
    با استفاده از توابع
    توابع CURL
    curl_exec : اجرای CURL
    curl_getinfo : نمایش اطلاعات یک تبادل
    curl_setopt : تنظیم کردن (set) یک گزینه (option)
    ما مي توانيم بدون بازکردن يک لينک از سلامت آن باخبر شويم. ما مي توانيم به روش زير اطلاعاتي در رابطه با يک لينک داشته باشيم :
    PHP Get Headers using cURL
    /**
    * Script to check link validity
    *
    * @author Pasak.org
    *
    */

    $links = array();
    $links[] = 'http://pasak.org/register.php';
    $links[] = 'http://pasak.org/contactus.php';
    $links[] = 'http://pasak.org/search.php';

    foreach ($links as $link) {
    $ch = curl_init($link);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_HEADER, 1); // return header
    curl_setopt($ch, CURLOPT_NOBODY, 1); // no body return. it will faster

    $linkHeaders = curl_exec($ch);
    $curlInfo = curl_getinfo($ch);
    curl_close($ch);

    switch(intval($curlInfo['http_code']/100)) {
    case 2:
    // Status is 2xx. Page is in correct health
    $status = 'OK';
    break;

    case 3:
    // Status is 3xx. It means redirection
    // Page has moved
    $status = 'MOVED';
    if (preg_match('@^Location: (.*)$@m', $linkHeaders, $matches)) {

    $location = trim($matches[1]);
    $status .= ": $location";
    }

    break;
    default:
    // any error
    $status = "Error: $curlInfo[http_code]";
    break;
    }

    echo "
    $link: $status


    ";

    }
    ?>

    ............
    ........

    دانلود مقاله کامل از اينجا
    براي دانلود از اينترنت اکسپلورر استفاده کنيد

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •