رفتن به مطلب
انجمن پی سی دی
peyman5959

آموزش برنامه نویسی

پست های پیشنهاد شده

[h=1]آموزش برنامه نویسیراهنما گام به گام PHP و MYSQL:[/h][h=1][/h]Mysql پرطر??دارترین سیستم پایگاه داده متن باز است.[h=3]Mysql چیست؟[/h][h=3][/h]· سیستم پایگاه داده متن باز· مانند بیشتر سیستم های مدیریت پایگاه داده مدرن مبتنی بر مدل رابطه ای، RDBMS، است.· روی لینوکس، ویندوز، Netware، AIX و غیره اجرا می شود.· با زبانهایی مانند PHP به اسانی در دسترس است.[h=3]چرا Mysql؟[/h][h=3][/h]· پایگاه داده متن باز است.· کارایی و درجه اطمینان بالا· سهولت است??اده· دسترس پذیری زیاد(high-availability)· طراحی برنامه جامع· سهولت مدیریت· هزینه خیلی پایین خرید[h=3]نحوه دریا??ت[/h][h=3][/h]· برای دانلود به سایت رسمی ان mysql.com مراجعه کنید [h=2]اتصال به پایگاه داده[/h]در این بخش با تابع mysql_connect() آشنا می شویم. از این تابع برای اتصال به پایگاه داده Mysql است??اده می شود.ساختار تابع:[TABLE=align: left][TR][TD]1[/TD][TD]mysql_connect(host name, user name, password)[/TD][/TR][/TABLE]mysql_connect() در صورت مو??قیت true را بر می گرداند در غیر این صورت false را. مثال:[TABLE=align: left][TR][TD]01[/TD][TD]<?[/TD][/TR][TR][TD]02[/TD][TD=colspan: 2]//the example of MySQL database connection[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]03[/TD][TD]//connect.php[/TD][/TR][TR][TD]04[/TD][TD=colspan: 2]$continued = mysql_connect("localhost","root","admin");[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]05[/TD][TD]if ($continued) {[/TD][/TR][TR][TD]06[/TD][TD=colspan: 2] echo ("Connection is succeed")[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]07[/TD][TD]} else {[/TD][/TR][TR][TD]08[/TD][TD=colspan: 2] echo ("Connection is fail")[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]09[/TD][TD]}[/TD][/TR][TR][TD]10[/TD][TD=colspan: 2]?>[/TD][/TR][/TABLE] [h=2]ساخت پایگاه داده[/h]از تابع Mysql_create_db() برای ساخت پایگاه داده است??اده می کنیم. معمولا، پایگاه داده را در برنامه است??اده می کنیم و دارای یک یا چند جدول است.ساختار Mysql_create_db()[TABLE=align: left][TR][TD]1[/TD][TD]mysql_create_db("database")[/TD][/TR][/TABLE]??ایلی به نام Create.php داخل پوشه www بسازید و کد زیر را وارد کنید:[TABLE=align: left][TR][TD]01[/TD][TD]<?[/TD][/TR][TR][TD]02[/TD][TD=colspan: 2]//the example of making MySQL database[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]03[/TD][TD]//create.php[/TD][/TR][TR][TD]04[/TD][TD=colspan: 2]$continued = mysql_connect("localhost","root","admin");[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]05[/TD][TD]if($continued){[/TD][/TR][TR][TD]06[/TD][TD=colspan: 2] echo("Connection is succeed");[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]07[/TD][TD]}else{[/TD][/TR][TR][TD]08[/TD][TD=colspan: 2] echo("Connection is fail");[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]09[/TD][TD]}[/TD][/TR][TR][TD]10[/TD][TD=colspan: 2]$make = mysql_create_db("data_root");[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]11[/TD][TD]if($make){[/TD][/TR][TR][TD]12[/TD][TD=colspan: 2] echo("

 

Database data_root succeeds in making");[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]13[/TD][TD]}else{[/TD][/TR][TR][TD]14[/TD][TD=colspan: 2] echo("

 

Database data_root fails in making");[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]15[/TD][TD]}[/TD][/TR][TR][TD]16[/TD][TD=colspan: 2]?>[/TD][/TR][/TABLE][h=2]ساخت جدول[/h]PHP تابع مخصوصی برای ساخت جدول با ??یلدهای معین ندارد. بنابراین برای ساخت جدول داده، از دستور برنامه پایگاه داده مانندMySQL است??اده می شود، این دستور با تابع mysql_query() اجرا می شود.برای مثال، پایگاه داده Employee برای یک د??تر را ساخته، یک جدول با ستون های employee number، employee name و employee address می سازیم.??ایلی به نام Create_table.php داخل www بسازید. کد زیر را در ان کپی کنید:[TABLE=align: left][TR][TD]01[/TD][TD]<?[/TD][/TR][TR][TD]02[/TD][TD=colspan: 2]//the example of making MySQL database table[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]03[/TD][TD]//create_table.php[/TD][/TR][TR][TD]04[/TD][TD=colspan: 2]$continued = mysql_connect("localhost","root","admin");[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]05[/TD][TD]if($continued){[/TD][/TR][TR][TD]06[/TD][TD=colspan: 2] echo("Connection is succeed");[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]07[/TD][TD]}else{[/TD][/TR][TR][TD]08[/TD][TD=colspan: 2] echo("Connection is fail");[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]09[/TD][TD]}[/TD][/TR][TR][TD]10[/TD][TD=colspan: 2]$make = mysql_create_db("employees");[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]11[/TD][TD]if($make){[/TD][/TR][TR][TD]12[/TD][TD=colspan: 2] echo("

 

Employees database succeeds in making");[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]13[/TD][TD]}else{[/TD][/TR][TR][TD]14[/TD][TD=colspan: 2] echo("

 

Employees database fails in making");[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]15[/TD][TD]}[/TD][/TR][TR][TD]16[/TD][TD=colspan: 2]$order1 = "CREATE TABLE data_employees[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]17[/TD][TD] ([/TD][/TR][TR][TD]18[/TD][TD=colspan: 2] employees_number int(10)AUTO_INCREMENT PRIMARY KEY,[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]19[/TD][TD] name char(100),[/TD][/TR][TR][TD]20[/TD][TD=colspan: 2] address varchar(255)[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]21[/TD][TD] )";[/TD][/TR][TR][TD]22[/TD][TD=colspan: 2]$make_table = mysql_db_query("employees",$order1);[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]23[/TD][TD]if($make_table){[/TD][/TR][TR][TD]24[/TD][TD=colspan: 2] echo("

 

Table data_employees succeeds in making");[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]25[/TD][TD]}else{[/TD][/TR][TR][TD]26[/TD][TD=colspan: 2] echo("

 

Table data_employees fails in making");[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]27[/TD][TD]}[/TD][/TR][TR][TD]28[/TD][TD=colspan: 2]?>[/TD][/TR][/TABLE][h=2]برای یادگیری برنامه نویسی PHPودیگر زبانهای برنامه نویسی به سایت زیر رجوع کنید:آموزش برنامه نویسینوع داده ??یلد ها[/h][h=3]نوع داده عددی[/h][h=3][/h][TABLE=align: left][TR][TD]نوع داده[/TD][TD]Gyration assess[/TD][/TR][TR][TD]TINYINT[/TD][TD](-128) - 127 or 0 - 255[/TD][/TR][TR][TD]SMALLINT[/TD][TD](-32768) - 32767 or 0 - 65535[/TD][/TR][TR][TD]MEDIUMINT[/TD][TD](-8388608) - 8388607 or 0 - 16777215[/TD][/TR][TR][TD]INT[/TD][TD](-2147683648) - 2147683647 or 0 - 4294967295[/TD][/TR][TR][TD]BIGINT[/TD][TD](-9223372036854775808) - 9223372036854775807 or 0 - 18446744073709551615[/TD][/TR][TR][TD]FLOAT(X)[/TD][TD](-3.402823466E+38) - (-1.175494351E-38), 0, and 1.175494351E-38 - 3.402823466E+38.[/TD][/TR][TR][TD]FLOAT[/TD][TD]The same as above[/TD][/TR][TR][TD]DOUBLE[/TD][TD](-1.7976931348623157E+308) - (-2.2250738585072014E-308), 0, and 2.2250738585072014E-308 - 1.7976931348623157E+308[/TD][/TR][/TABLE] میزان حا??ظه مورد نیاز متغیر ها در جدول زیر امده است:[TABLE=align: left][TR][TD]نوع داده[/TD][TD]حا??ظه مورد نیاز[/TD][/TR][TR][TD]TINYINT[/TD][TD]1 byte[/TD][/TR][TR][TD]SMALLINT[/TD][TD]2 bytes[/TD][/TR][TR][TD]MEDIUMINT[/TD][TD]3 bytes[/TD][/TR][TR][TD]INT[/TD][TD]4 bytes[/TD][/TR][TR][TD]INTEGER[/TD][TD]4 bytes[/TD][/TR][TR][TD]BIGINT[/TD][TD]8 bytes[/TD][/TR][TR][TD]FLOAT(X)[/TD][TD]4 ifX <=24 or 8 if 25 <=X <=53[/TD][/TR][TR][TD]FLOAT[/TD][TD]4 bytes[/TD][/TR][TR][TD]DOUBLE[/TD][TD]8 bytes[/TD][/TR][TR][TD]DOUBLE PRECISION[/TD][TD]8 bytes[/TD][/TR][TR][TD]REAL[/TD][TD]8 bytes[/TD][/TR][TR][TD]DECIMAL(M,D)[/TD][TD]M+2 bytes if D>0, M+1 bytes if D=0(D+2, if M)<>[/TD][/TR][TR][TD]NUMERIC(M,D)[/TD][TD]M+2 bytes if D>0, M+1 bytes if D=0(D+2, if M)<>[/TD][/TR][/TABLE][h=3]نوع داده رشته ای[/h][h=3][/h][TABLE=align: left][TR][TD]نوع داده[/TD][TD]Gyration assess[/TD][/TR][TR][TD]CHAR[/TD][TD]1-255 character[/TD][/TR][TR][TD]VARCHAR[/TD][TD]1-255 character[/TD][/TR][TR][TD]TINYLOB, TINYTEXT[/TD][TD]1-255 character[/TD][/TR][TR][TD]BLOB, TEXT[/TD][TD]1-65535 character[/TD][/TR][TR][TD]MEDIUMLOB, MEDIUMTEXT[/TD][TD]1-16777215 character[/TD][/TR][TR][TD]LONGLOB, LONGTEXT[/TD][TD]1-4294967295 character[/TD][/TR][TR][TD]ENUM('element1','element2',...)[/TD][TD]Maximal 65535 character[/TD][/TR][TR][TD]SET('element1','element2',...)[/TD][TD]Maximal 64 element[/TD][/TR][/TABLE]میزان حا??ظه مورد نیاز:[TABLE=align: left][TR][TD]نوع داده[/TD][TD]حا??ظه مورد نیاز[/TD][/TR][TR][TD]CHAR(M)[/TD][TD]M bytes, 1 <=M <=255[/TD][/TR][TR][TD]VARCHAR(M)[/TD][TD]L+1 bytes, L <=M and 1 <=M <=255[/TD][/TR][TR][TD]TINYLOB, TINYTEXT[/TD][TD]L+1 bytes, L <2^8[/TD][/TR][TR][TD]BLOB, TEXT[/TD][TD]L+2 bytes, L<2^16[/TD][/TR][TR][TD]MEDIUMLOB, MEDIUMTEXT[/TD][TD]L+3 bytes, L<2^24[/TD][/TR][TR][TD]LONGBLOB, LONGTEXT[/TD][TD]L+4 bytes, L<2^32[/TD][/TR][TR][TD]ENUM('element1','element2',...)[/TD][TD]1 or 2 bytes, depend to the number of element[/TD][/TR][TR][TD]SET('element1','element2',...)[/TD][TD]1, 2, 3, 4 or 8 bytes, depend to the number of element[/TD][/TR][/TABLE] [h=3]نوع داده تاریخ[/h][h=3][/h][TABLE=align: left][TR][TD]نوع داده[/TD][TD]Gyration assess[/TD][/TR][TR][TD]DATETIME[/TD][TD]'1000-01-01 00:00:00' to '9999-12-31 23:59:59'[/TD][/TR][TR][TD]DATE[/TD][TD]'1000-01-01' to '9999-12-31'[/TD][/TR][TR][TD]TIMESTAMP[/TD][TD]'1970-01-01 00:00:00' - 2037[/TD][/TR][TR][TD]TIME[/TD][TD]'-838:59:59' to '838:59:59'[/TD][/TR][TR][TD]YEAR[/TD][TD]1901 - 2155[/TD][/TR][/TABLE]میزان حا??ظه مورد نیاز: [TABLE=align: left][TR][TD]نوع داده[/TD][TD]حا??ظه مورد نیاز[/TD][/TR][TR][TD]DATE[/TD][TD]3 bytes[/TD][/TR][TR][TD]DATETIME[/TD][TD]8 bytes[/TD][/TR][TR][TD]TIMESTAMP[/TD][TD]4 bytes[/TD][/TR][TR][TD]TIME[/TD][TD]3 bytes[/TD][/TR][TR][TD]YEAR[/TD][TD]1 bytes[/TD][/TR][/TABLE] [h=2]درخواست های Mysql[/h]PHP برای کار با داده پایگاه داده تابع خاصی را ارائه نداده است. بنابراین باید از دستورات Mysql است??اده کرد. برای انجام عملیات های داده ای این کارها را باید انجام دهید:1. به پایگاه داده متصل شوید.2. با است??اده از تابع mysql_query() دستور Mysql را اجرا کنید. با است??اده از توابع mysql_fetch_array()،mysql_fetch_row() و mysql_num_rows نتیجه را پردازش کنید.[h=3]ا??زودن داده[/h][h=3][/h]برای ا??زودن داده به پایگاه داده از این دستور است??اده کنید:INSERT INTO nama_table (field1,field2,...) VALUES ('data1','data2',...)اگر پارامتر های ??یلد مشخص نشود، تعداد داده های ورودی باید با تعداد ستون های جدول یکی باشد.مثال[TABLE=align: left][TR][TD]01[/TD][TD]<?[/TD][/TR][TR][TD]02[/TD][TD=colspan: 2]//the example of inserting data[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]03[/TD][TD]//data_insert.php[/TD][/TR][TR][TD]04[/TD][TD=colspan: 2]mysql_connect("localhost","root","admin");//database connection[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]05[/TD][TD]mysql_select_db("employees");[/TD][/TR][TR][TD]06[/TD][TD=colspan: 2]$order = "INSERT INTO data_employees[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]07[/TD][TD=colspan: 2] (name, address)[/TD][/TR][TR][TD]08[/TD][TD] VALUES[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]09[/TD][TD] ('H.R. Dian',[/TD][/TR][TR][TD]10[/TD][TD=colspan: 2] 'Jl. Raya Baru KOTABARU')";[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]11[/TD][TD]//inserting data order[/TD][/TR][TR][TD]12[/TD][TD=colspan: 2] [/TD][/TR][/TABLE][TABLE=align: left][TR][TD]13[/TD][TD=colspan: 2]//declare in the order variable[/TD][/TR][TR][TD]14[/TD][TD]$result = mysql_query($order);[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]15[/TD][TD]if($result){[/TD][/TR][TR][TD]16[/TD][TD=colspan: 2] echo("

Input data is succeed");[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]17[/TD][TD]}else{[/TD][/TR][TR][TD]18[/TD][TD=colspan: 2] echo("

Input data is fail");[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]19[/TD][TD]}[/TD][/TR][TR][TD]20[/TD][TD=colspan: 2]?>[/TD][/TR][/TABLE][h=3]تابع mysql_fetch_row()[/h][h=3][/h]تابع mysql_fetch_row() داده را از متغیر $result خط به خط می گیرد. اولین خروجی بالاترین خط است. داده ای که این تابع بر می گرداند به صورت آرایه است به طوری که عناصر آرایه همان ??یلد های جدول داده هستند.[h=3]تابع mysql_fetch_array()[/h][h=3][/h]علاوه بر تابع mysql_fetch_row()، می توان از تابع mysql_fetch_array() هم است??اده کرد. همانند تابع mysql_fetch_row()این تابع هم یک خط داده را می خواند.ت??اوت دو تابع در این است که نتایج بازگشتی با mysql_fetch_array() به صورت آرایه associative است.[h=3]ویرایش داده[/h][h=3][/h]برای ویرایش داده از دستور زیر می توان است??اده کرد:[TABLE=align: left][TR][TD]1[/TD][TD=colspan: 2]UPDATE name_table SET field1=new_value, field2=new_value, ...[/TD][/TR][TR][TD]2[/TD][TD]WHERE condition1,condition2, ...[/TD][/TR][/TABLE][h=3]حذ?? داده[/h][h=3][/h]برای حذ?? داده از دستور زیر است??اده می شود:DELETE FROM name_table WHERE condition1,condition2,...[h=3]اضا??ه کردن ستون به جدول[/h][h=3][/h]با دستور زیر می توان ستون هایی را به جدول اضا??ه کرد:ALTER TABLE table_name ADD field_name field_type field_attribute [h=3]ویرایش ستون ها جدول[/h][h=3][/h]گاهی نیاز است مثلا ستون از نوع char به varchar تبدیل شود و یا طول ستونی با اندازه 50 باید به 100 تغییر کند. برای این منظور از دستور زیر است??اده می شود:ALTER TABLE table_name MODIFY field_name field_type field_attributeمثال: نوع داده ستون position را تغییر می دهیم:[TABLE=align: left][TR][TD]01[/TD][TD]<?[/TD][/TR][TR][TD]02[/TD][TD=colspan: 2]//the example of changing MySQL database field table[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]03[/TD][TD=colspan: 2]//change_field.php[/TD][/TR][TR][TD]04[/TD][TD] [/TD][/TR][/TABLE][TABLE=align: left][TR][TD]05[/TD][TD]//database connection[/TD][/TR][TR][TD]06[/TD][TD=colspan: 2]mysql_connect("localhost","root","admin");[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]07[/TD][TD=colspan: 2]mysql_select_db("employees");[/TD][/TR][TR][TD]08[/TD][TD] [/TD][/TR][/TABLE][TABLE=align: left][TR][TD]09[/TD][TD=colspan: 2]$order1 = "ALTER TABLE data_employees MODIFY position char(50)";[/TD][/TR][TR][TD]10[/TD][TD]$add_field = mysql_db_query("employees", $order1);[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]11[/TD][TD]if ($add_field){[/TD][/TR][TR][TD]12[/TD][TD=colspan: 2] echo ("

 

Field position succeeds in adding");[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]13[/TD][TD]}else{[/TD][/TR][TR][TD]14[/TD][TD=colspan: 2] echo ("

 

Field position fails in adding");[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]15[/TD][TD]}[/TD][/TR][TR][TD]16[/TD][TD=colspan: 2]?>[/TD][/TR][/TABLE][h=3]حذ?? ستون از جدول[/h][h=3][/h]برای حذ?? ستون از جدول:ALTER TABLE table_name MODIFY field_name field_type field_attributeبرای مثال ستون position را حذ?? می کنیم:[TABLE=align: left][TR][TD]01[/TD][TD]<?[/TD][/TR][TR][TD]02[/TD][TD=colspan: 2]//the example of deleting MySQL database field table[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]03[/TD][TD]//delete_field.php[/TD][/TR][TR][TD]04[/TD][TD=colspan: 2]mysql_connect("localhost","root","admin");//database connection[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]05[/TD][TD]mysql_select_db("employees");[/TD][/TR][TR][TD]06[/TD][TD=colspan: 2]$order1 = "ALTER TABLE data_employees DROP position";[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]07[/TD][TD=colspan: 2]$add_field = mysql_db_query("employees", $order1);[/TD][/TR][TR][TD]08[/TD][TD]if ($add_field){[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]09[/TD][TD=colspan: 2] echo ("

 

Field position succeeds in deleting");[/TD][/TR][TR][TD]10[/TD][TD]}else{[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]11[/TD][TD=colspan: 2] echo ("

 

Field position fails in deleting");[/TD][/TR][TR][TD]12[/TD][TD]}[/TD][/TR][/TABLE][TABLE=align: left][TR][TD]13[/TD][TD]?>[/TD][/TR][/TABLE]

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

برای ارسال دیدگاه یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید دیدگاهی ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در سایت ما ثبت نام کنید. عضویت خیلی ساده است !

ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید

ورود به حساب کاربری

×
×
  • جدید...