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

موضوع: سوال : نحوه ساخت دیتابیس

Hybrid View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #1
    عضو جدید
    تاریخ عضویت
    Oct 2015
    نوشته ها
    12
    تشکر تشکر کرده 
    21
    تشکر تشکر شده 
    9
    تشکر شده در
    7 پست

    پیش فرض سوال : نحوه ساخت دیتابیس

    سلام دوستان خسته نباشید .

    من PHP رو بصورت مبتدی و ویرایش کردن و اینا بلد بودم گفتم برم سراغ آموزش های حرفه ای که شروع کردم برای تمرین یه CMS ساده بنویسم .

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

    http://s6.uplod.ir/i/00703/5j2r5fdrcn2q.png

    میخوام یه تیبل بسازم که اینجوری باشه :

    http://s6.uplod.ir/i/00703/ivtmi69r3nhc.png


    در ضمن میخوام از طریق PHPmyadmin بسازم . ممنون میشم کوئری یا نحوه ایجادش رو بگین .
    بازی های آنلاین مینی کاپ , MiniCUp

    www.minicup.ir

  2. #2
    عضو جدید chiktarh آواتار ها
    تاریخ عضویت
    Oct 2015
    نوشته ها
    13
    تشکر تشکر کرده 
    0
    تشکر تشکر شده 
    17
    تشکر شده در
    16 پست

    پیش فرض پاسخ : سوال : نحوه ساخت دیتابیس

    درود و وقت بخیر

    برای این منظور، وارد وب اپلیکیشن phpmyadmin می شویم:



    همانطور که در تصویر فوق می بینیم، با یک فلش قرمز رنگ نشان داده شده است که وارد دیتابیسی تحت عنوان new_db شده ایم. وقتی که وارد یک دیتابیس می شویم، در Tab مخصوص Structure، فیلدی وجود دارد تحت عنوان Name به معنی "نام" که می بایست داخل آن نام مد نظر خود را وارد کنیم که در این مثال نام users به معنی "کاربران" را وارد نموده ایم. در کنار این فیلد، فیلد دیگری وجود دارد تحت عنوان Number of columns به معنی "تعداد ستون ها" که عدد 3 را وارد این فیلد نموده ایم. به عبارت دیگر، جدول مربوط به کاربران فقط می تواند سه سری اطلاعات را در خود ذخیره سازد. حال می توانیم روی دکمه Go کلیک نماییم و وارد صفحه ای به شکل زیر می شویم:

    در ردیف اول در فیلد مربوط به Name نامی همچون id را وارد کرده ایم. علت اینکه اولین ردیف را به id یا "شناسه" اختصاص داده ایم برای این است که می بایست هر رکوردی که داخل جدول ثبت می شود قابل شناسایی باشد و با اختصاص id به هر رکورد این کار امکان پذیر خواهد بود. در بخش Type به معنی "نوع" گزینه INT که مخفف واژه Integer به معنی "عدد صحیح" است را انتخاب نموده ایم چرا که شناسه هر رکورد یک عدد خواهد بود مثل یک، دو، سه و ... . در فیلد مربوط به Length/Values به معنی "طول/مقادیر" عدد 11 را وارد نموده ایم چرا که عرف است برای شناسه ها این مقدار وارد می شود. به عبارت دیگر، تعداد شناسه ها می تواند تا عددی به طول 11 رقم افزایش یابد.
    همانطور که در تصویر فوق مشخص است، ردیف مربوط به id نسبت به دو ردیف دیگر از خصوصیات بیشتری برخوردار است. به عبارت دیگر، در بخش Index گزینه PRIMARY برای این فیلد تک خورده است و چک باکس A.I. که مخفف واژگان Auto Increment به معنی "افزایش به صورت خودکار" است نیز تیک خورده است. کاری که این چک باکس انجام می دهد این است که رکورد اول که در این جدول به ثبت می رسد شناسه شماره یک به آن اختصاص داده می شود، رکورد دوم شناسه شماره دو را می گیرد الی آخر.
    در توضیح PRIMARY بایستی گفت که توصیه می شود تا در هر جدول یکی از ستون ها همچون id به صورت PRIMARY باشد که در این صورت آن ستون که PRIMARY شده است به عنوان ستونی محسوب می شود که برای ارجاع به هر رکورد ثبت شده در دیتابیس مبنا قرار داده می شود. توجه داشته باشیم که در هر جدول فقط و فقط یک ستون می تواند PRIMARY باشد.
    در ردیف دوم username را به عنوان نام این ستون در نظر گرفته ایم و در فیلد مربوط به Type هم گزینه VARCHAR را انتخاب نموده ایم. علت انتخاب VARCHAR این است که این جدول برای ذخیره سازی نام کاربری و رمز عبور اختصاص یافته است و زمانیکه کاربران در یک سایت نام کاربری و رمز عبور انتخاب می کنند، نام کاربری و رمز عبور ایشان تلفیقی از عدد، علائم، حروف و ... است و از آنجا که VARCHAR چنین قابلیتی را دارا است، این گزینه را انتخاب نموده ایم. در فیلد مربوط به Length/Values هم عدد 255 را وارد نموده ایم چرا که این امکان را به کاربران می دهیم تا بتوانند رشته ای به طول 255 کاراکتر را به عنوان نام کاربری یا رمز عبور خود انتخاب نمایند. به همین صورت ستون مربوط به رمز عبور را هم تکمیل نموده و روی دکمه Save به معنی "ذخیره" کلیک می کنیم:


    می بینیم که جدولی تحت عنوان users ساخته شده است. حال اگر روی Tab مربوط به Structure کلیک کنیم، با تصویر زیر مواجه خواهیم شد:

    می بینیم که ستون هایی که در جدول ایجاد کردیم به همراه کلیه خصوصیات آنها به نمایش در آمده اند. در این مرحله از کار، ساخت جدول تکمیل شده و فقط نیاز است تا با اسکریپت هایی که بعداً یاد خواهیم گرفت اقدام به ثبت دیتا در این جدول خواهیم نمود.
    گفتیم که علاوه بر روش ساخت جدول به صورت دستی، این امکان نیز برای ما وجود دارد تا با استفاده از کدهای SQL هم اقدام به ساخت جدول نماییم. برای درک بهتر این موضوع، قصد داریم تا با تکمیل کدهایی که پیش از این مورد استفاده قرار دادیم، اقدام به ایجاد یک جدول تحت عنوان new_table نماییم. برای این منظور، کدهای فایل index.php را به صورت زیر تکمیل می کنیم:

    ?
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    <!DOCTYPE html>
    <html>
    <head>
    <title>Netshahr.com PHP Course</title>
    </head>
    <body>
    <?php

    $server_name = "localhost";
    $username = "root";
    $password = "";
    $my_connection = @mysql_connect($server_name, $username, $password);
    $query = mysql_select_db("new_db", $my_connection);
    if ($query) {
    $sql = "CREATE TABLE `new_table` (`id` INT AUTO_INCREMENT PRIMARY KEY, `username` VARCHAR(255), `password` VARCHAR(255))";
    $create_db = mysql_query($sql, $my_connection);
    if ($create_db) {
    echo "Table Created!";
    } else {
    echo "Failed to create the table.";
    }
    }

    ?>
    </body>
    </html>


    در تفسیر کدهای فوق بایستی گفت که پس از انتخاب دیتابیسی تحت عنوان new_db، از یک دستور شرطی if استفاده نموده ایم که اگر این دیتابیس انتخاب شد، دستورات داخل if اجرا شوند و در غیر این صورت هم هیچ اتفاقی رخ ندهد.
    دستورات داخل if هم عبارتند از متغیری تحت عنوان sql که حاوی مقداری است معادل با یکسری کد SQL. این کدها را داخل علامت های " " قرار داده ایم. از آنجا که می خواهیم یک جدول جدید بسازیم ابتدا دستور اس کیو ال CREATE TABEL را می نویسیم (توجه داشته باشیم که برای نوشتن کدهای SQL نیازی نیست تا آنها را با حروف بزرگ بنویسیم اما مابین برنامه نویسان پی اچ پی حرفه ای روال است که این دستورات را با حروف بزرگ بنویسند تا به راحتی بتوانند این دستورات را از اسامی همچون new_table تمیز دهند.) سپس نامی برای جدول خود در نظر می گیریم تحت عنوان new_table که این نام دلخواه را داخل علامت های ` ` قرار می دهیم که اصطلاحاً Grave نامیده می شوند. سپس یک جفت پرانتز قرار می دهیم و داخل آنها ستون هایی که می خواهیم جدول ما داشته باشد را لیست می کنیم.
    اولین ستونی که می خواهیم ایجاد کنیم id نام دارد که آنرا مابین دو علامت ` ` قرار داده ایم. سپس یک فاصله قرار داده و مشخصات این شناسه را نوشته ایم. به عبارت دیگر، از آنجا که می خواهیم id از جنس عدد صحیح باشد، دستور اس کیو ال INT را می نویسیم. علاوه بر این، می خواهیم که شناسه به صورت خودکار افزایش یابد لذا دستور AUTO INCREMENT را می نویسیم. از آنجا که می خواهیم این ستون PRIMARY باشد، دستور PRIMARY KEY را هم در ادامه می نویسیم. برای آنکه یک ستون جدید ایجاد شود، یک کاما قرار داده سپس همانند id نامی جدید مثلاً username در نظر می گیریم. از آنجا که این ستون قرار است حاوی مقادیر مختلفی باشد، نوع آنرا از جنس VARCHAR قرار می دهیم و از آنجا که می خواهیم در ستون مربوط به نام کاربری، کاربران بتوانند اطلاعات زیادی وارد کنند، طول آنرا برابر با 255 قرار می دهیم (طول این مقدار را می بایست داخل دو پرانتز قرار دهیم.) به همین صورت ستون مربوط به رمز عبور را وارد می کنیم.
    در ادامه متغیری می سازیم تحت عنوان create_db که این متغیر برابر است با متد mysql_query که حاوی پارامترهای به ترتیب sql و my_connection می باشد سپس با استفاده از یک دستور if تست کرده ایم ببینیم که آیا متد mysql_query اجرا شده است یا خیر که اگر به درستی اجرا شده باشد جواب true بازگردانده می شود و عبارت داخل if که همان !Table created به معنی "جدول ساخته شد!" است به نمایش در می آید و در غیر این صورت هم دستور داخل else که حاوی عبارت .Failed to create the table به معنی "عدم موفقیت در ساخت جدول." می باشد به نمایش در می آید. اکنون می توانیم یک بار دستور خود را داخل مرورگر اجرا کنیم:


    می بینیم که دستور داخل if اجرا شده است. نگاهی هم به اپلیکیشن phpmyadmin می اندازیم:

    می بینیم که داخل دیتابیس new_db جدولی ساخته شده است تحت عنوان new_table که دارای ستون های id و username و password می باشد که خصوصیات در نظر گرفته شده برای تک تک آنها هم اعمال شده است. در آموزش بعد خواهیم دید که به چه شکل می توان رکوردی داخل جدول ثبت کرد.

    چيك طرح
    فروشگاه هاست ارزان
    ثبت شده در لیست اول صفحه گوگل با نام (هاست ارزان - طراح چت روم)



  3. تعداد تشکر ها از chiktarh به دلیل پست مفید


  4. #3
    عضو جدید
    تاریخ عضویت
    Oct 2015
    نوشته ها
    12
    تشکر تشکر کرده 
    21
    تشکر تشکر شده 
    9
    تشکر شده در
    7 پست

    پیش فرض پاسخ : سوال : نحوه ساخت دیتابیس

    کامل ترین جواب ممکن .

    ممنون دوست عزیز .
    بازی های آنلاین مینی کاپ , MiniCUp

    www.minicup.ir

  5. #4
    عضو جدید chiktarh آواتار ها
    تاریخ عضویت
    Oct 2015
    نوشته ها
    13
    تشکر تشکر کرده 
    0
    تشکر تشکر شده 
    17
    تشکر شده در
    16 پست

    پیش فرض پاسخ : سوال : نحوه ساخت دیتابیس

    خواهش میکنم

    موفق باشید
    چيك طرح
    فروشگاه هاست ارزان
    ثبت شده در لیست اول صفحه گوگل با نام (هاست ارزان - طراح چت روم)



  6. تعداد تشکر ها از chiktarh به دلیل پست مفید


  7. #5
    عضو جدید
    تاریخ عضویت
    Oct 2015
    نوشته ها
    12
    تشکر تشکر کرده 
    21
    تشکر تشکر شده 
    9
    تشکر شده در
    7 پست

    پیش فرض پاسخ : سوال : نحوه ساخت دیتابیس

    نقل قول نوشته اصلی توسط chiktarh نمایش پست ها
    خواهش میکنم

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

    اگه بخوام فیلد Password رو بصورت MD5 ذخیره کنم باید چه تغییری در این row بدم ؟
    بازی های آنلاین مینی کاپ , MiniCUp

    www.minicup.ir

  8. #6
    عضو جدید chiktarh آواتار ها
    تاریخ عضویت
    Oct 2015
    نوشته ها
    13
    تشکر تشکر کرده 
    0
    تشکر تشکر شده 
    17
    تشکر شده در
    16 پست

    پیش فرض پاسخ : سوال : نحوه ساخت دیتابیس

    منظورتون و متوجه نشدم؟
    چيك طرح
    فروشگاه هاست ارزان
    ثبت شده در لیست اول صفحه گوگل با نام (هاست ارزان - طراح چت روم)



  9. تعداد تشکر ها از chiktarh به دلیل پست مفید


  10. #7
    عضو جدید
    تاریخ عضویت
    Oct 2015
    نوشته ها
    12
    تشکر تشکر کرده 
    21
    تشکر تشکر شده 
    9
    تشکر شده در
    7 پست

    پیش فرض پاسخ : سوال : نحوه ساخت دیتابیس

    از طریق php باید md5 میکردم که جواب رو با سرچ پیدا کردم شرمنده اسپم زدم .

    از هردو شما بزرگوارا ممنون .
    بازی های آنلاین مینی کاپ , MiniCUp

    www.minicup.ir

  11. #8
    کاربر اخراج شده
    تاریخ عضویت
    Nov 2015
    نوشته ها
    29
    تشکر تشکر کرده 
    0
    تشکر تشکر شده 
    21
    تشکر شده در
    21 پست

    پیش فرض پاسخ : سوال : نحوه ساخت دیتابیس

    نقل قول نوشته اصلی توسط minicup نمایش پست ها
    از طریق php باید md5 میکردم که جواب رو با سرچ پیدا کردم شرمنده اسپم زدم .

    از هردو شما بزرگوارا ممنون .
    تابع MD5برای mysql هم تعریف شده و میتوانید در query خودتون از این تابع استفاده کنید برای مثال : pass = MD5('123456')

  12. تعداد تشکر ها از TiTVPS به دلیل پست مفید


  13. #9
    عضو انجمن
    تاریخ عضویت
    Dec 2010
    محل سکونت
    تبريز
    نوشته ها
    686
    تشکر تشکر کرده 
    391
    تشکر تشکر شده 
    573
    تشکر شده در
    427 پست

    پیش فرض پاسخ : سوال : نحوه ساخت دیتابیس


  14. تعداد تشکر ها از ms313 به دلیل پست مفید


اطلاعات موضوع

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

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

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

  1. پاسخ ها: 3
    آخرين نوشته: September 26th, 2017, 00:34
  2. 2 سوال در مورد سرور دیتا بیس
    توسط asiacat در انجمن سوالات و مشکلات
    پاسخ ها: 0
    آخرين نوشته: September 12th, 2015, 04:30
  3. سوال درباره دیتابیس
    توسط rh98 در انجمن ساير لينوکس ها
    پاسخ ها: 1
    آخرين نوشته: August 17th, 2015, 21:05
  4. پاسخ ها: 1
    آخرين نوشته: January 12th, 2013, 04:33
  5. سوال و راهنمایی در مورد دیتاسنتر Equinix سوئیس
    توسط logofun در انجمن سرور اختصاصی
    پاسخ ها: 69
    آخرين نوشته: July 27th, 2011, 23:32

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

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