نمایش نتایج: از شماره 1 تا 9 , از مجموع 9

موضوع: آموزش ذخيره اطلاعات با Flash و Php

  1. Borna66_TAHA آواتار ها
    Borna66_TAHA
    مدیر سابق
    Feb 2009
    9,903
    390
    تشکر شده : 3,688

    Gadid آموزش ذخيره اطلاعات با Flash و Php

    سلام دوستان ...
    چند تا از دوستان بهم پيغام خصوصي داده بودن كه اين مقاله رو بنويسم ... و حالا با كمي تاخير به قولم عمل ميكنم ...
    اول بايد چند تا نكته رو بگم ...
    فلش (فعلا) اين قابليت رو نداره كه اطلاعات شما (معمولا متغير ها) رو به طور مستقيم داخل يه فايل ذخيره كنه و يا اينكه با بانكهاي اطلاعاتي ارتباط داشته باشه ...
    البته قابليتي كه در فلش MX 2004 گنجونده شده اينه كه شما ميتونيد با استفاده از اون مكاني رو براي ذخيره اطلاعات قرار بديد ...
    ٌٌكه البته دو تا عيب داره ... يكي اينكه دوراز دسترس كاربر نهاييه و ديگري اين كه شما فقط در Windows ميتونيد از اون استفاده كنيد و امكان استفاده در Server رو نداريد ...
    حالا ما اينجا روشي رو ميگيم كه شما ميتونيد با استفاده از اون در سرور هايي كه Php رو پشتيباني ميكنن ، اطلاعات تون رو ذخيره كنيد ...
    در آخر هم با استفاده از همين روش ، چگونگي ارتباط بين فلش و Php رو براي دسترسي به MySql DataBase مي گيم ...

    براي اينكه شما بتونيد اطلاعاتتون رو ذخيره كنيد به اين احتياج داريد كه متغير هاتون رو به يك فايل Php بفرستيد تا براتون ذخيره كنه ...
    فرستادن متغير ها به دو صورت ( متد Method ) امكان پذيره ... يكي به صورت GET و ديگري به صورت POST . درخواست هاي Get معمولا از ايمني كمتري برخوردارن ... چون محتويات متغير هاتون رو هنگام ارسال ، بصورت واضح نشون ميده .... (البته نه در فلش ... اگر در فلش از اين متد استفاده كنيد ... فقط توي Temporary Internet Files در خواست ها ديده ميشن)
    در خواست هاي GET معمولا به صورت زيره :
    فقط کاربران ثبت نام شده میتوانند لینک های انجمن را مشاهده کنند. ]file.php?variable=Contentهمونطور كه ميبينيد به وضوح ، توي فايل "File.php" متغيري به نام "variable" ايجاد شده كه محتوياتش "Content" هست ... اما درخواست هاي POST بدون اينكه ديده بشن ، ارسال ميشن ...
    توي فلش هم شما آزاد هستيد كه از هر كدوم از اينها بخوايد استفاده كنيد ...
    حالا شروع ميكنيم به ساخت فايلهامون ...
    فرض كنيد ميخوايم يه فرم بسازيم كه كابر بتونه توسط اون ثبت نام كنه ... و شما هم ميخوايد كه نام كابري ، كلمه عبور و ايميل اون رو با فرمت خاصي وارد فايلي به نام "Users.txt" بكنيد ...
    ميخوايم هر كاربري كه ثبت نام ميكنه با فرمت Username: String/Password: Hash Md5/E-mail: String توي فايل بنويسيد ... مثلا اين يه فايل نمونه است :

    Amir/ca0dbad92a874b2f69b549293387925e/amir_s32@yahoo.com Majid/ff8104697613ed3ef1ad05867fccbe3c/info@majidonline.com
    Kami_mz/e46fa9f744f9c59384eaa308ae9012e8/info@farsiprojects.com
    البته بايد رو اين نكته دقت داشته باشيد كه نام كاربري و ايميل نبايد حاوي كاراكتر "/" باشند ... خوب ... حالا فرم رو درست ميكنيم :
    همونطور كه ميبينيد كلا 5 تا فيلد هست كه 4 تا شون بايد توسط كاربر پر بشه ...
    4 فيلد اول به ترتيب به متغير هاي email ، userpassword2 ، userpassword ، username پيوند داده شدن، فيلد پنجمن هم براي نشون دادن اينه كه برنامه در حال انجام چه كاري هست ، كه اون هم به متغير state پيوند داده شده
    دقت كنيد كه Instance name فيلد نام كاربري username_f و براي ايميل email_f هست ...
    براي اينكه كاربر نتونه كاراكتر "/" رو توي نام كاربري وارد كنه و ما هم محدوديت بيشتري رو براي وارد كردن ايميل بذاريم ، بايد اين كاراكتر هايي كه اجازه ورود به فيلدها رو دارن محدود كنيم ، اين اسكريپت رو به تنها فريم فايل ميديم :
    username_f.restrict = "0-9"+"a-z"+"A-Z"+"\\-_.";
    email_f.restrict = "0-9"+"a-z"+"A-Z"+"\\-_"+"@.";براي اينكه كاربر ايميل خودشو درست وارد كنه ، اين تابع رو هم تعريف ميكنيم ... (چون اصل كار ما در اينجا ارتباط با سرور هست ، در باره اين كد توضيحي نميدم) ، اين كد رو در فريم اول بذاريد :
    function checkMail(mail:String) {
    var out:Boolean;
    if (mail.length<6) {
    out = false;
    state = "Email address too short";
    } else if (mail.indexOf("@") == -1) {
    out = false;
    state = "Missing @";
    } else if (mail.indexOf(".") == -1) {
    out = false;
    state = "Missing the dot";
    } else {
    state = "";
    out = true;
    }
    return out;
    } خوب حالا اين اسكريپت رو هم به دكمه ميديم :
    on (release) {
    if ((userpassword == userpassword2) and (username != undefined) and (checkMail(email))) {
    this.loadVariables("http://www.Your-Server.com/reg.php","POST");
    state = "Crating your Profile";
    listen = true;
    }
    } نكته : ما در اينجا از متد POST استفاده ميكنيم و اطلاعات رو به آدرس http://www.Your-Server.com/reg.php ميفرستيم ، شما بايد آدرس فايل خودتون رو اينجا وارد كنيد ... چيز ديگه اي كه اينجا اضافه شده قسمتي هست كه متغير listen رو روي true تنظيم ميكنه ... ما با اين كار ميخوايم قسمتي از برنامه رو وادار به اين كار بكنيم كه ببينه ثبت نام كي تموم ميشه و بعد به كاربر اطلاع بديم ...
    پس اين كد رو هم در ادامه توي فريم اول ميذاريم :

    onEnterFrame = function () {
    if (listen) {
    if (created == "ok") {
    listen = false;
    state = "Your profile created !";
    }else if (created == "problem") {
    listen = false;
    state = "ERROR !!!";
    }
    }
    }
    (اين ابتدايي ترين كار ممكنه !) خوب ... كار ما با فلش تموم شد ... ميريم سراغ Php :
    يه فايل به اسم reg.php درست بكنيد ... توي Php براي اينكه به متغير هاي ارسالي دسترسي داشته باشيد ، بايد از آرايه هايي به نام " آرايه هاي انجمني " و يا " فراگير " استفاده كنيد ...
    اين آرايه ها به طور كلي به اين شكل هستن :
    $HTTP_*_VARS["variable"]; شما ميتونيد به جاي * از كلمات POST ويا GET استفاده كنيد و انديس (Index) آرايه تون رو اسم متغير بديد ، براي مثال :
    $HTTP_POST_VARS["username"]; البته ميتونيد به جاي نوشتن اسم بلند اين آرايه ، از آرايه هاي كوتاه تر استفاده كنيد :
    $_POST["username"]; $_GET["username"];
    (توجه كنيد كه در Php تمام متغير ها با علامت "$" شروع ميشوند) .... فايل reg.php رو باز ميكنيم و اينها رو توش مينويسيم :
    <?php
    $username
    = $_POST["username"];
    $password = md5($_POST["userpassword"]);
    $email = $_POST["email"];
    if (
    $file = fopen("Users.txt","a+")) {
    if (
    fwrite($file,"$username/$password/$email\r\n")) {
    echo(
    "created=ok");
    }else {
    echo(
    "created=problem");
    exit;
    }
    }else {
    echo(
    "created=problem");
    fclose($file);
    exit;
    }
    fclose($file);
    ?>
    شما به همين صورت ميتونيد متغير هاي جديدي اضافه كنيد و استفاده كنيد ... براي برقرار كردن ارتباط بين فلش و MySQL هم ميتونيد از همين روش استفاده كنيد ... اطلاعات رو از فلش بگيريد و query هاي مورد نياز خودتون رو با استفاده از اونها درست بكنيد ...
    براي اين كار بايد در زمينه ديتابيس ها خبره باشيد ... براي مثال :
    <?php
    $username
    = $_POST["username"];
    $password = md5($_POST["password"]);
    $email = $_POST["email"];
    //-------------------------------------
    $dbhost = "localhost";
    $dbname = "onlineReg";
    $dbusername = "root";
    $dbpassword = "secret";
    $conn = mysql_connect($dbhost,$dbusername,$dbpassword) or die("state=Internal Error !");
    $sql = mysql_select_db($dbname,$conn) or die ("state=Internal Error !");
    $query = "INSERT INTO users VALUES ($username,$password)";
    mysql_query($query,$conn);
    mysql_close($conn);
    ?>
    شما به همين ترتيب ميتونيد انواع query هاي خودتون رو بسازيد و حتي اطلاعات به دست اومده از اون ها رو در قالب خاصي كه فلش پشتيباني ميكنه ، توسط دستور echo چاپ كنيد ...
    موفق باشيد ...

    فقط کاربران ثبت نام شده میتوانند لینک های انجمن را مشاهده کنند. ]
    فقط کاربران ثبت نام شده میتوانند لینک های انجمن را مشاهده کنند. ]
    فقط کاربران ثبت نام شده میتوانند لینک های انجمن را مشاهده کنند. ]
    هميشه خود باشيم نه كسي ديگر!
    فقط کاربران ثبت نام شده میتوانند لینک های انجمن را مشاهده کنند. ]
    فقط کاربران ثبت نام شده میتوانند لینک های انجمن را مشاهده کنند. ]
    #1 ارسال شده در تاريخ 17th July 2009 در ساعت 19:00

  2. 2 کاربر از این پست تشکر کرده اند :


  3. scupdes آواتار ها
    scupdes
    کاربر سایت
    Jul 2009
    3
    2
    تشکر شده : 0

    Thumb سلام

    آقا واقعا ممنونم.
    من به این خیلی احتیاج داشتم.
    اگه مشکلی ت فلش داشتم کجا مطرح کنم؟
    #2 ارسال شده در تاريخ 30th July 2009 در ساعت 17:17

  4. nimazebel آواتار ها
    nimazebel
    کاربر سایت
    Sep 2009
    2
    1
    تشکر شده : 0

    پیش فرض

    آقا اگه میشه سورس فایل رو برام بذارین
    #3 ارسال شده در تاريخ 17th September 2009 در ساعت 05:58

  5. Borna66_TAHA آواتار ها
    Borna66_TAHA
    مدیر سابق
    Feb 2009
    9,903
    390
    تشکر شده : 3,688

    Thumbs up

    [QUOTE=nimazebel;407669]آقا اگه میشه سورس فایل رو برام بذارین[/
    QUOTE]
    اين فايل سورسش
    فقط کاربران ثبت نام شده میتوانند لینک های انجمن را مشاهده کنند. ]

    نقل قول نوشته اصلی توسط scupdes فقط کاربران ثبت نام شده میتوانند لینک های انجمن را مشاهده کنند. ]
    آقا واقعا ممنونم.
    من به این خیلی احتیاج داشتم.
    اگه مشکلی ت فلش داشتم کجا مطرح کنم؟
    خواهش
    در همين جا سوال رو مطرح كنيد

    روزگار خوش
    فقط کاربران ثبت نام شده میتوانند لینک های انجمن را مشاهده کنند. ]
    هميشه خود باشيم نه كسي ديگر!
    فقط کاربران ثبت نام شده میتوانند لینک های انجمن را مشاهده کنند. ]
    فقط کاربران ثبت نام شده میتوانند لینک های انجمن را مشاهده کنند. ]
    #4 ارسال شده در تاريخ 19th September 2009 در ساعت 21:00

  6. یک کاربر از این پست تشکر کرده است :


  7. nimazebel آواتار ها
    nimazebel
    کاربر سایت
    Sep 2009
    2
    1
    تشکر شده : 0

    پیش فرض

    آقا واقعا ممنونم
    مرسی
    هزار تشکر
    #5 ارسال شده در تاريخ 20th September 2009 در ساعت 06:30

  8. scupdes آواتار ها
    scupdes
    کاربر سایت
    Jul 2009
    3
    2
    تشکر شده : 0

    Icon16 datagrid

    خوب شروع میکنم.
    چطور میشه از datagrid واقع در componands استفاده کرد؟؟؟؟؟؟
    #6 ارسال شده در تاريخ 21st September 2009 در ساعت 21:57

  9. Borna66_TAHA آواتار ها
    Borna66_TAHA
    مدیر سابق
    Feb 2009
    9,903
    390
    تشکر شده : 3,688

    Thumbs up

    نقل قول نوشته اصلی توسط scupdes فقط کاربران ثبت نام شده میتوانند لینک های انجمن را مشاهده کنند. ]
    خوب شروع میکنم.
    چطور میشه از datagrid واقع در componands استفاده کرد؟؟؟؟؟؟
    خوب دوست عزيز ديتا گريد كامپونتي هست كه اطلاعات رو جمه جور تر و بهتر نمايش دهند.بنابراين شما بايد ابتداعا يك مجموعه اطلاعات يا db داشته باشيد سپس اين db رو به ديتا گريد ربط دهيد.تمام اين كار ها از طريق اسكريپت نويشي در فلش امكان پذير هست.
    روزگار خوش
    فقط کاربران ثبت نام شده میتوانند لینک های انجمن را مشاهده کنند. ]
    هميشه خود باشيم نه كسي ديگر!
    فقط کاربران ثبت نام شده میتوانند لینک های انجمن را مشاهده کنند. ]
    فقط کاربران ثبت نام شده میتوانند لینک های انجمن را مشاهده کنند. ]
    #7 ارسال شده در تاريخ 21st September 2009 در ساعت 23:10

  10. scupdes آواتار ها
    scupdes
    کاربر سایت
    Jul 2009
    3
    2
    تشکر شده : 0

    پیش فرض

    خیلی فهمیدم. مرسی از توضیح بی نظیرتوون.
    #8 ارسال شده در تاريخ 22nd September 2009 در ساعت 21:16

  11. MehryarS آواتار ها
    MehryarS
    کاربر سایت
    Dec 2010
    1
    0
    تشکر شده : 0

    پیش فرض

    Agha man nemidounam male man chera az harchi 2ta Save mikone????????????????
    #9 ارسال شده در تاريخ 29th December 2010 در ساعت 11:39

موضوعات مشابه

  1. انباره داري / تحليل زنده / داده كاوي
    توسط secret در انجمن برنامه نويسي عمومی
    پاسخ ها: 0
    آخرين نوشته: 31st March 2009, 17:49
  2. آموزش macromedia flash 8
    توسط secret در انجمن بحث های نرم افزاری
    پاسخ ها: 0
    آخرين نوشته: 12th February 2009, 16:03

علاقه مندی ها (Bookmarks)

مجوز های ارسال و ویرایش

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