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


در حال بارگذاری
23 اکتبر 2022
فایل ورد و پاورپوینت
2120
3 بازدید
۹۷,۷۰۰ تومان
خرید

توجه : به همراه فایل word این محصول فایل پاورپوینت (PowerPoint) و اسلاید های آن به صورت هدیه ارائه خواهد شد

  مقاله نرم افزار تحویل کتاب در کتابخانه دارای ۱۱۵ صفحه می باشد و دارای تنظیمات در microsoft word می باشد و آماده پرینت یا چاپ است

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

توجه : در صورت  مشاهده  بهم ریختگی احتمالی در متون زیر ،دلیل ان کپی کردن این مطالب از داخل فایل ورد می باشد و در فایل اصلی مقاله نرم افزار تحویل کتاب در کتابخانه،به هیچ وجه بهم ریختگی وجود ندارد


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

نرم افزار تحویل کتاب در کتابخانه

مقدمه

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

بسیار زمان گذشت تا بشر نسبت به ثبت و ضبط منظور خودش ، در قالب کلمات نوشتاری اقدام کرد و حساب ها را ثبت نمود.
اکنون ارتباط آموزشی، اداری، تجاری و; هر کدام دنیایی از مفاهیم و اعداد و روابط را در درون خود دارد که بدون ثبت و ضبط دقیق و سازمان یافته آنها و بکارگیری علم و فن آوری، استفاده از آنها غیر ممکن است. آنچه در این پایان نامه ارائه می شود کوششی است برای سریعتر انجام شدن عمل امانت گرفتن کتاب از کتابخانه و همچنین کاستن از رفت و آمد های بیهوده.

پس از تعریف صورت پروژه، انتخاب ابزار و محیط مناسب برای پیاده سازی طرح مورد نظر، در اولویت قرار گرفت که بعد از مطالعات صورت گرفته، تصمیم گرفتیم که از زبان برنامه نویسی تحت وبPHP و زبان پایگاه داده MySql استفاده کنیم.

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

فصل اول
PHP
My sql

فصل اول- آشنایی با نرم افزار های مورد استفاده

PHP چیست ؟
PHP سال ۱۹۹۴ توسط Rasmus Lerdorf ایجاد شد و مخفف واژگان Personal Home Pages به حساب
می آید.
با گسترش قابلیت ها و موارد استفاده این زبان PHP در معنای Hypertext Preprocessor به کار گرفته شد. عبارت پیش پردازشگر (Preprocessor) بدین معنی است که PHP اطلاعات را قبل از تبدیل به زبان Html پردازش می کند.

مطابق مطالب سایت وب رسمی PHP که در آدرس http://www.php.net قرار دارد، PHP زبان اسکریپتی سمت سرویس دهندهHtml Embeded , Cross-Platform ,(Server-side) می باشد.

سمت سرویس دهنده بودن PHP بدین معناست که تمام پردازشهای این زبان بر روی سرویس دهنده (Server) انجام می گیرد. یک سرویس دهنده در حقیقت یک کامپیوتر مخصوص می باشد که صفحات وب در آنجا نگهداری می شوند و از آنجا به مرورگر وب کاربران منتقل می شوند.

منظور از Cross-Platform بودن این زبان این است که بروی هر سیستم و با هر سیستم عاملی از قبیل : Unix, Windows NT, Macintosh, Os/2 اجرا میشوند. توجه کنید که منظور از سیستم عامل، سیستم عامل هایی می باشند که بر روی سرویس دهنده نصب می شوند. PHP نه تنها قابلیت اجرا بر روی هر سیستم عاملی را دارا می باشد بلکه برای منتقل کردن برنامه های آن از یک سیستم عامل به سیستم عامل دیگر احتیاج بــه تغییرات اندکی خواهید داشت و حتی در بعضی از موارد بدون احتیاج به هیچ تغییری می توانید یک برنامه به زبان php را از یک سیستم عامل به سیستم عامل دیگر منتقل کنید. منظور از Html embeded بودن PHP این است که دستورات این زبان در بین کدهای html قرار می گیرند. بنابراین برنامه نویسی به زبان PHP کمی پیچیده تر از برنامه نویسی به زبان Html به حساب می آید.

PHP بر خلاف زبانهای برنامه نویسی (Programming Languages) یک زبان اسکریپتی (Scripting Language) می باشد به عبارت دیگر دستورات PHP بعد از رخداد یک رویداد (Event) اجرا می شوند. این رویدادها می توانند شامل ارسال یک فرم رفتن به یک URL مشخص و یا مواد دیگر باشند متداولترین زبان اسکریپتی زبان Java Script می باشد که معمولا برای پاسخ به رویدادهای کاربر در مرورگر وب بــه کار می رود تفاوت عمده Java Script با PHP در این است که Java Script یک تکنولوژی سمت سرویس گیرنده (Client-side) می باشد.
زبان هایی مانند Java Script یا PHP تفسیر شونده (Interpreted) نامیده می شوند. به عبــارت دیگر برای اجرا به یک مفسر مانند مرورگر وب احتیاج دارند. اما زبانهای برنامه نویسی مانند C یا Java بعد از ترجمه به زبان ماشین (Compile) به خودی خود قابل اجرا می باشند.

جدیدترین نسخه PHP نسخه ۴ این زبان اسکریپتی می باشد و کلیه فایل ها و کدهایی که توی این وبلاگ ارائه میشه تحت این نسخه کار میکنند. اما یک مشکل هست که اکثر سرویس دهنده ها از نسخه ۳ استفاده میکنند. تفاوت این دو نسخه PHP بسیار اندک هست و تغییرات مهم عموما در مسیر اصلاح عملکرد این زبان صورت گرفته شده است.

PHP و مقایسه آن با Perl CGI
امروزه با توجه به اینکه روز به روز بر تعداد میزبانهایی که PHP رو ساپورت میکنند افزوده میشود ، صحبت در مورد PHP و قابلیتهای آن در میان طراحان وب و برنامه نویسان زیاد است.
برای کسانی که فقط نامی از PHP شنیده اند و از تواناییها و مزیت های PHP آگاهی ندارند در این توضیحات PHP را به طور مختصر شرح میدهم و آن را با اسکریپتهای CGI مقایسه میکنم.
همان طورکه گفتیم PHP یک زبان طرف خادم (server side ) می باشد و ما میتوانیم برای ساخت صفحات دینامیک وب از آن استفاده کنیم. برای مثال مدیریت و ساماندهی اطلاعات دریافتی از یک form html با PHP بسیار آسان است.

زبانها
اگر با زبانهای C , C++ , Perl یا Java کار کرده باشیم یاد گرفتن زبان PHP میتواند مانند زنگ تفریح باشد! در واقع خیلی سریع میتوانید اسکریپت نویسی را با PHP شروع کنیم.
متغیرها در PHP مانند perl هستند (با پیشوند $ ) و انواع مختلف داده ها را میتوانند در خود ذخیره کنند. برای مثال $whatever میتواند انواع داده ها شامل رشته ای ، عددی و غیره را در خود نگه دارد.
اگر مقدار $whatever یک عدد باشد شما میتوانید مقدار آن را اینگونه افزایش دهید:
$whatever ++;
یا
$whatever =+1;
یا
$whatever=$whatever+1;
که دقیقا همان روشی است که در C ، C++ ، Perl یا Java به کار میبردید.

تسهیلات توکار (Built-in facilities )
بر خلاف Perl که یک زبان همه منظوره است و شما میتوانید تقریبا هر برنامه ای را با آن بنویسید ، PHP از ابتدا با هدف اسکریپت نویسی برای صفحات وب درست شده ، از اینرو اسکریپت نویسی برای صفحات وب در PHP بسیار آسانتر از Perl می باشدبرای مثال میخواهیم از یک فرم در یک صفحه وب ایمیلی را به آدرس خودمان ارسال کنیم. به کمک Perl احتمالا کدی شبیه زیر را مینویسیم :

open ( MAIL,”|/usr/sbin/sendmail -t”);
print MAIL “To: myself\@mydomain.com\n” ;
print MAIL “From: visitor\@hisdomain.com\n” ;
print MAIL “Subject: Comments from Web Form\n\n” ;
print MAIL $mainmessage ;
close ( MAIL ) ;

 

اما همین برنامه در PHP به شکل زیر نوشته می شود :
mail ( “myself@mydomain.com”, “Comments from Web Form”,
$mainmessage, “From: visitor@hisdomain.com” );

این سادگی و روانی برای بقیه کارها هم صادق است ، مانند فرستادن یا بازیابی یک پرونده با FTP یا HTTP.همانطور که گفته شد این سادگی از آنجا ناشی میشود که PHP فقط برای برنامه نویسی برای صفحات وب طراحی شده است.
تسهیلات دیگر آن در اداره کردن input های یک form می باشد ، برای مثال یک فرم مانند زیر را در نظر بگیرید:
<input
type=text name=”dateofbirth”>
شما خیلی راحت و سریع می توانید به محتویات این فرم در متغیر $dateofbirth دسترسی داشته باشید. نیازی به تجزیه و تحلیل input های فرم نیست.
تمام فیلد ها در یک فرم به طور اتوماتیک به متغیرهایی تبدیل میشوند که شما خیلی راحت میتوانید به آنها دسترسی داشته باشید.
دسترسی به پایگاه داده ها هم به همین شکل آسان و راحت است. کار با پایگاه های داده مانند MySQL, MSQL, Dbase, Oracle, InterBase, از قابلیتهای ذاتی (Built-in) PHP است . PHP حتی برای رمزنگاری MIME هم تابعی در نظر گرفته است. قابلیتها و تسهیلات PHP بسیار زیاد است .

ساخت صفحات وب
یک صفحه PHP میتواند شبیه کد زیر باشد :

<html>

<head><title>My First PHP Script</title></head>

<body>

<h1>My First PHP Script</h1>
<p>

Welcome, Internet user from IP address

<echo $REMOTE_ADDR>. Hope you like my first

PHP page.

</body>

</html>

توجه کنید که این دقیقا شبیه source صفحات وب می باشد مگر در موارد که دستورات PHP را شامل می شوند. این کد آدرس IP بیننده صفحه را مینویسد ، برای همین از دستور echo استفاده کرده ایم . متغیر محیطی وب سرور (environment variable) REMOTE_ADDR به صورت اتوماتیک با متغیری به همین نام در PHP شناخته میشود (مانند دیگر متغیرهای محیطی وب سرور). از اینرو نوشتن چنین
اسکریپتهایی بسیار آسان و لذت بخش خواهد بود!

 

اشکال زدایی PHP در مقایسه با Perl CGI
اگر شما اسکریپتهای نوشته شده را به صورت آنلاین آزمایش و اشکال زدایی میکنید PHP واقعا در این زمینه می درخشد!
هنگامی که اشکالی در یک اسکریپت Perl پیدا شود شما یک پیغام رمزگونه و نامفهوم (چیزی شبیه “۵۰۰ Internal Server Error”) دریافت میکنید.اما وقتی که اسکریپت های PHP خود را به صورت آنلاین آزمایش میکنید ، هنگام مواجه شدن با اشکال پیغام خطا را با اشاره دقیق به شماره خط دارای اشکال میدهد و این برای اشکال زدایی خیلی کار ما را راحت میکند ، هر چند پیغام خطا گاهی اوقات کلی و نامفهوم است مانند “parse error”.

ولی در Perl پیغام خطای “Internal Server Error” می تواند از هر چیزی ناشی شود ، از اشتباه در syntax گرفته تا جا انداختن یک حرف یا upload کردن فایل در غیر text mode .اما اشکال زدایی به صورت آفلاین کاملا برعکس می باشد.بیشتر برنامه نویسان اعتقاد دارند که مفسر Perl هنگام مواجه شدن با خطا پیغام بهتر و مفید تری میدهد تا مفسر PHP که مثلا برای بسیاری از خطاها پیغام کلی parse error را میدهد که این امر هم با توجه به انتشار نسخه های جدیدتر PHP میتواند برطرف شود.
PHP یک زبان برنامه نویسی با کد باز (Open-Source) است که اگرچه در ابتدا صرفا جهت برنامه نویسی تحت وب تولید شد، امروزه کارآییهای فراوانی پیدا کرده است.php طبیعتا برای اجرا نیاز به یک برنامه سرویس دهنده وب (Web Server) دارد.

کسانیکه قبلا با PERL کار کرده اند و حالا قصد داشته باشند با PHP کار کنند، احتمالا در ابتدا به مشکلاتی بر خواهند خورد. آنچه به نظر من از خصوصیات خوب PHP بشمار می آید آن است که با وجود شباهت PHP با PERL، PHP پیچیدگیهای PERL را کمتر دارا می باشد. هرچند که قدرت PERL بر روی متن ها غیر قابل انکار است اما فراموش نکنید که PHP را صرفا برای محیط وب ساخته اند پس به اندازه کافی ( و حتی بیش از حد کافی ) امکانات کار با stringها را به شما ارائه خواهد کرد.

برای شروع کار با PHP چه نیاز داریم؟
PHP برای اجرا نیاز به یک Web-Server دارد. در دست ترین Web-Server برای ما احتمالا IIS خواهد بود، چرا که با استفاده از سی دی Windows قابل نصب است. در این توضیحات به شرح نصب IIS (یا وب سرورهای دیگر) نمی پردازیم. برای کسانیکه “Open Source” را پرستش می کنند شاید بهتر باشد از Apache به عنوان Web-Server استفاده کنند. (البته اگر از حق هم نگذریم Apache خیلی از IISبهتر است!)

اگر Web-Server مورد علاقه شما به درستی بر روی دستگاه شما نصب شده است، حالا نیاز دارید که PHP را بر روی آن نصب کنید. برای بدست آوردن کد PHP از آدرس http://www.php.net/downloads.php استفاده کنید.
طبیعتا برای مشاهده نتیجه اجرای فایلهای PHP نیاز به یک مرورگر وب (Web Browser) داریم که مسلما رایجترین آن Internet Explorer است. برای درست کردن هر فایل PHP هم نیاز به یک ویرایشگر ساده متنی داریم (مثلا Word pad یا Note pad ) توجه کنید که از ویرایشگرهای حرفه ای مانند Microsoft Word نمی توانید استفاده کنید زیرا این ویرایشگرها از کاراکترهای پنهانی فراوانی استفاده می کنند که در هنگام ذخیره فایل متنی این کاراکترها هم ذخیره خواهند شد که باعث عدم اجرای دستورات PHP می شوند.حالا یک کد ساده PHP می نویسیم.
حالا می خواهیم اولین کد PHP را با هم درست کنیم. ویرایشگر متن را باز کنید (مثلا Word pad) و در آن چنین بنویسید:
<php
echo (“Hi! I am the first PHP script you have made!”);
>
حالا فایلتان را با عنوان ۱st.php و در Web Server Local Folder ذخیره نمایید (اگر از IIS استفاده می کنید این فولدر در درایوی که Windows را در آن نصب کرده اید، با نام Inetpub وجود دارد. در داخل آن فولدر دیگری به نام wwwroot وجود دارد که باید فایلمان را در آن بریزیم.)

حالا مرورگر وب خود را باز کنید (مثلا Internet Explorer) و در قسمت آدرس آن ابتدا //:http و سپس نام کامپیوتر خود و یا آدرس IP آن را تایپ نمایید (نام کامیوتر را در Control panel/System/Network Identification و IP را در صورتیکه تعیین کرده باشید در قسمت Command Prompt و با اجرای دستور ipconfig می توانید مشاهده کنید) و پس از یک Backslash (/) نام فایل (۱st.php) را تایپ نموده و Enter را بزنید. بعنوان مثال نام کامپیوتر من اگر arash است. پس باید در قسمت آدرس مرورگرم خط زیر را بنویسم:
http://arash/1st.php

باید کد PHP خود را در داخل تگ <php > قرار دهید. البته می توانید از روشهای دیگر نیز استفاده کنید اما متداولترین روش همین است.
دستور ()echo در PHP وظیفه چاپ در خروجی را بر عهده دارد.می توانستیم همین کد را با کمک تگهای HTML و بصورت زیر نیز بنویسیم:
<html>
<body>
<php
echo (“Hi! I am the first PHP script you have made!”);
>
</body>
</html>
در هر صورت خروجی برنامه به همان صورت که گفتیم خواهد بود. تا یا بصورت یک email خصوصی و یا در قالب یک مقاله پاسخ شما را بدهم.

توضیحات برنامه نویس در حین برنامه نویسی (Comments )
مانند تمام زبانهای برنامه نویسی دیگر، می توانید توضیحات خود را برای آسان کردن رجوع های بعدی در
PHP داشته باشید. به این منظور می توانید از // یا # برای بازداشتن PHP از انجام پردازش بر روی متن روبروی آن استفاده کنید. اگر می خواهید بیش از یک خط را زیر پوشش Comment خود قرار دهید، آن را در بین علامتهای /* */ قرار دهید.

<php
// This line will not be parsed in PHP
# This line will not be parsed in PHP like the line above
/* Line number1: These 3 lines will not either!
Line number2

Line number3: End of comment */
>
عملگرهای ریاضی در PHP
عملگرهای ریاضی در PHP طبق جدول زیر می باشند.
مثال نام عملگر
$a + $b جمع +
$a – $b تفریق –
$a * $b ضرب *
$a / $b تقسیم /
$a % $b باقیمانده %
توجه: همانند زبانهایی مانند C در اینجا هم می توانیم از عملگرهای پیشوندی مانند $a+=$b یا $a++ استفاده نماییم.

عملگرهای رشته ای در PHP
یک عملگر رشته ای مهم در PHP وجود دارد و آن نقطه (.) می باشد. این عملگر باعث به هم چسبیدن دو رشته مجزا می گردد.
توجه: از عبارت .= می توانید استفاده نمایید.
متغیرها در PHP
در زبان PHP باید قبل از هر متغیر یک علامت $ قرار دهید. در واقع PHP از روی علامت $ تشخیص می دهد که متغیرهای برنامه شما کدامند.
اگر تاکنون با زبانهای برنامه نویسی مانند C، C++، Pascal و مانند اینها کار کرده باشیم، احتمالا انتظار داریم انواع مختلف متغیرها اعم از Integer، Real، Float و غیره را برایتان معرفی کنم. اما احتمالا خوشحال خواهید شد که بدانید نوع متغیرها برای PHP اهمیت ندارد. کافیست متغیری را نامگذاری کنید و سپس هر مقدار، از هر نوع و به هر اندازه که می خواهید در آن قرار دهید. سوالی که پیش خواهد آمد احتمالا “نحوه عمل PHP با این متغیرهای همه منظوره” است.

قبل از اینکه به مثال برسیم باید به دو نکته اشاره کنم:
۱- متغیرها درPHP نسبت به کوچکی و بزرگی حساسیت دارند (Case Sensitive ). یعنی به عنوان مثال متغیرهای my_var و My_Var و MY_VAR از نظر زبان PHP با هم متفاوت هستند.

۲- متغیرها می توانند نامهایی با حروف کوچک و بزرگ انگلیسی و همینطور Underscore (خط فاصله پایین) را اخذ نمایند. استفاده از اعداد به شرطی که اولین حرف متغیر نباشند نیز مجاز است. (یعنی مثلا $s12 و $S_1 به عنوان نام متغیر مجاز است اما $۱s2 مجاز نمی باشد. بعدها خواهیم دید که بسیاری از متغیرهایی که PHP خود از آنها استفاده می کند دارای Underscore در ابتدایشان می باشد.
حالا به مثال زیر توجه کنید:
<php
$a=4;
$b=23;

$c=”20hi! “;
$d=”world 26″;
$D=650.25; //It is different from $d
echo($D);//650.25
echo(“<br>”);
echo($d);//world 26

echo(“<br>”);
echo($a+$b); //27
echo(“<br>”);
echo($b+$c);//43
echo(“<br>”);
echo($c+$d);//20

echo(“<br>”);
echo($c.$d);//20hi! world 26
echo(“<br>”);
echo($a.$c.$d);//420hi! world 26
echo(“<br>”);

$c.=$d;
echo($c);//20hi! world 26
echo(“<br>”);
echo($d);//world 26
>
خروجی برنامه بصورت زیر خواهد بود:

همانطور که از مثال بالا هم متوجه می شوید، در صورتیکه عددی را بصورت عادی و بدون علامت نقل قول (” “) به یک متغیر نسبت می دهیم، PHP می تواند با آن هم بصورت عدد و هم بصورت رشته برخورد نماید. در صورتیکه یک مقدار را در داخل ” ” قرار دهیم، اگر در ابتدای آن یک عدد وجود داشته باشد، PHP می تواند در مقابل عملگرهای ریاضی با آن عددها همچون اعداد عادی برخورد نماید و در مقابل عملگرهای رشته ای به عنوان رشته.پس گفتیم که در PHP انواع داده مهم نیست. این به این معنی نیست که PHP اصلا نوع داده ندارد. PHP از نوع داده های زیر استفاده می کند:

Float، Integer، String، double، array، Boolean و ;
اما نیازی به استفاده از این نوع متغیرها را در طراحی وب نداریم.
معرفی اپراتورهای منطقی
اپراتورهای منطقی در تمام مکانهایی که با متغیرهای Boolean سروکار دارید می توانند استفاده شوند. بدیهی است که پاسخ نیز یک پاسخ Boolean خواهد بود. لیست کامل اپراتورهای Boolean در زیر آمده است:

Example Name Result
$a and $b And TRUE if both $a and $b are TRUE.
$a or $b Or TRUE if either $a or $b is TRUE.
$a xor $b Xor TRUE if either $a or $b is TRUE, but not both.
! $a Not TRUE if $a is not TRUE.
$a && $b And TRUE if both $a and $b are TRUE.

$a || $b Or TRUE if either $a or $b is TRUE.

چند تابع رشته ای جالب: شاید بد نباشد که چند تابع که عملیات رشته ها (strings) را بر عهده دارند:
الف) string substr ( string string, int start [, int length])
این تابع بخشی از یک رشته را بر می گرداند. آرگومان اول رشته ای است که عملیات بر روی آن انجام می گردد. آرگومان دوم موقعیت کاراکتری است که عملیات از آن آغاز می گردد. آرگومان سوم تعداد کاراکترهایی است که از شروع باید مورد بررسی قرار گیرد. مثالهای زیر از PHP Manual انتخاب شده اند. به آنها توجه کنید:
<php
$rest = substr(“abcdef”, 1); // returns “bcdef”
$rest = substr(“abcdef”, 1, 3); // returns “bcd”
$rest = substr(“abcdef”, 0, 4); // returns “abcd”

$rest = substr(“abcdef”, 0, 8); // returns “abcdef”

// Accessing via curly braces is another option
$string = ‘abcdef’;
echo $string{0}; // returns a
echo $string{3}; // returns d
$rest = substr(“abcdef”, -1); // returns “f”
$rest = substr(“abcdef”, -2); // returns “ef”
$rest = substr(“abcdef”, -3, 1); // returns “d”

$rest = substr(“abcdef”, 0, -1); // returns “abcde”
$rest = substr(“abcdef”, 2, -1); // returns “cde”
$rest = substr(“abcdef”, 4, -4); // returns “”
$rest = substr(“abcdef”, -3, -1); // returns “de”
>
ب) int substr_count ( string haystack, string needle)
تعداد تکرار یک string را در یک string دیگر شمارش می کند. آرگومان اول، رشته مرجع و آرگومان دوم، رشته جستجو شونده است. نتیجه تابع یک عدد است. به مثال زیر توجه کنید:
<php
echo substr_count(“This is a test”, “is”); // prints out 2
>
ج) string substr_replace ( string string, string replacement, int start [, int length])
این تابع می تواند یک رشته را جایگزین یک رشته دیگر نماید. آرگومان اول رشته مرجع، آرگومان دوم رشته جایگزین، آرگومان سوم شروع جایگزینی و آرگومان آخر شماره کاراکتر انتهایی است. به مثال زیر توجه کنید:
<php
$var = ‘ABCDEFGH:/MNRPQR/’;
echo “Original: $var<hr />\n”;
/* These two examples replace all of $var with ‘bob’. */
echo substr_replace($var, ‘bob’, 0) . “<br />\n”;
echo substr_replace($var, ‘bob’, 0, strlen($var)) . “<br />\n”;
/* Insert ‘bob’ right at the beginning of $var. */
echo substr_replace($var, ‘bob’, 0, 0) . “<br />\n”;
/* These next two replace ‘MNRPQR’ in $var with ‘bob’. */
echo substr_replace($var, ‘bob’, 10, -1) . “<br />\n”;
echo substr_replace($var, ‘bob’, -7, -1) . “<br />\n”;
/* Delete ‘MNRPQR’ from $var. */
echo substr_replace($var, ”, 10, -1) . “<br />\n”;
>
د) int strlen ( string str) طول متغیر را بر می گرداند. به مثال زیر توجه کنید:
<php
$str = ‘abcdef’;
echo strlen($str); // 6
$str = ‘ ab cd ‘;
echo strlen($str); // 7
>

دستورات شرطی
در اینجا فقط از شرط if به عنوان یک شرط پر استفاده توضیحاتی می دهم.شرط های دیگری نیز در php وجود دارد که اینجا برای معرفی آنها جای مناسبی نیست.
if(یک شرط)
{
—-
—-
—-
}
شکل کلی شرط به این صورت است . داخل پرانتز یک شرط را می نویسیم و بین { } دستوراتی که اگر شرط داخل پرانتز برقرار بود باید اجرا شوند را قرار میدهیم.
مثلا :
if($user == “ali”)
{
print(“Welcome Ali!”);
}
در صورتی که متغیر user برابر با رشته ali بود دستور print داخل شرط اجرا می شود .
برای بررسی دو چیز با هم از یک سری علامت ها استفاده می کنیم که معنی آنها به صورت زیر است:
== بررسی تساوی دو چیز
> کوچکتر
< بزرگتر
=> کوچکتر یا مساوی
=< بزرگتر یا مساوی
=! مخالف (نامساوی)
شرط ها مباحث زیادی دارند که در قسمت های بعدی به بررسی آنها می پردازیم.

مفاهیم ابتدائی Mysql

مقدمه :‌
قبل از هر چیز لازم به ذکر است که مطالب ذیل در حد آشنایی بوده و دوستان برای دستیابی به تکنیکهای بیشتر می بایست از کتابهای مرجع و Book online خود SQL Server استفاده نمایند. در مطالب زیر که سلسله وار مباحث SQL Server را مرور خواهیم کرد , سعی شده تا ابتدا مطالب مقدماتی جهت آشنایی آورده شود و سپس به مطالب پیشرفته آن بپردازیم. پس در ابتدا مرور سریعی بر چند دستور SQL که کاربرد بیشتری دارند خواهیم پرداخت و سپس به my SQL و مطالب آن خواهیم پرداخت . مطالب زیر اکثرا از کتاب Microsoft SQL Server 7.0 Database Implementation Training انتخاب گردیده است . این کتاب به همراه CDآموزش آن به عنوان یک مرجع برای امتحانات مایکروسافت استفاده می‌شود.
جداول بکار رفته نیز همگی در SQL Server 7.0 در Database Northwind موجود هستند.

دستور Select
این دستور که دستوری مستقل نیست و حتما باید با اجزایی بکار رود جهت ساخت پرس و جو بر روی بانک اطلاعاتی بکار می‌رود و رکوردهایی که با شرایط این دستور همخوان باشد به عنوان نتیجه پرس و جو برمی‌گرداند . چهار کلمه کلیدی وجود دارند که بخشهای ارزشمند این دستور را تشکیل می‌دهند :
۱- select
۲- from
۳- where
۴-orderby

شکل کلی دستور :

Select [*|distinct column1, column2,…]

From table[,table2,…]

Where شرط

Order by نام فیلد یا شماره فیلد

مثال :
Select * from customers
این دستور تمام رکوردهای جدول customers را برمی‌گرداند.
حال اگر شرط Country =’ir’فه کنیم ، فقط اطلاعات مشتریان ایران جواب خواهند بود که به ۷ سطر تقلیل می‌یابد.
select * from customers
where Country =’uk’

حال
select City,Country from customers
order by city

فقط ستونهای نام شهر (city) و نام کشور (Country) را بر گردانده و بر اساس نام شهر مرتب میکند. دستور بالا با دستور پایین هردو یک جواب را میدهند :

select City,Country from customers
order by 1

که تمام سطرها بازگردانده خواهد شد . در نتیجه پرس و جو تعدادی سطر تکراری وجود دارد مانند شهر London که اگر از کلمه Distinct در Select استفاده کنیم این سطرهای تکراری حذف خواهد شد .

select distinct City,Country from customers

order by 1

استفاده از توابع در Select
۱- Count : تعداد سطرهای بازگردانده شده توسط select را میشمارد.

Select Count(*) from Customers
where Country =’uk’

در اصل تعداد مشتریانی را میشمارد که در کشور انگلیس هستند. که عدد ۷ جواب است.
۲- Sum : مجموع یک فیلد عددی را برمی‌گرداند.
Select sum(Quantity) from [Order Details]
where productid = 11

مجموع فیلد Quantity را برای فیلدهایی که شماره محصول آنها ( Productid) برابر ۱۱ است را محاسبه میکند
نکته ۱ : در دستور select می‌توان از اسم مستعار استفاده کرد ، یعنی نام جدیدی را برای یک ستون در نظر گرفت به عنوان مثال select قبل را به شکل زیر بکار برد :

Select sum(Quantity) as Sum_QTY
from [Order Details]
where productid = 11

که Sum_QTY یک اسم مستعار برای مجموع است. استفاده از کلمه کلیدیas ‌اختیاری است.
نکته ۲ : در دستور select هرگاه اسم فیلدی اسم خاص باشد و یا فاصله بین اسم باشد مثل Order Details که فاصله بین اسم جدول است حتماُ از علامت براکت [] میبایست استفاده کرد.
نکته ۳ : استفاده از group by :
هنگامی که از توابع count ‌ و Sum به همراه یک فیلد دیگر در دستور select استفاده می‌شود از group by استفاده می‌کنیم . به عنوان مثال دستور زیر جمع مقادیر فیلد Quantity را برای هر شماره محصول محاسبه میکند

Select productid, sum(Quantity) as sum_qty
from [Order Details]
group by productid

که نتیجه مانند زیر خواهد بود :
در صورتیکه دستور ordr by 1 بعد از group by استفاده کنیم نتیجه بر اساس کد محصول مرتب خواهد شد.
نکته ۴ : دستور where می تواند خود شامل یک دستور select باشد :
select * from Products
where ProductID in
( select distinct ProductID from [order details] where Quantity >70)
order by ProductID

تنها نکته ای که می بایست توجه کرد این است که نام فیلدی که در شرط آورده می شود حتما در دستور select آورده شود, به عبارت دیگر select درون شرط تنها یک ستون را می بایست برگرداند.
مثال : با فرض اینکه دو جدول Products و order details دارای ستون (فیلد) یکسان ProductID هستند , یک دستور Select بنویسید که تمام فیلدهایی از Products را نشان دهد که فیلد ProductID آن با ProductID جدول order details یکی باشد.؟
حل :
Select pr.*
From Products as pr , [order details] as od
Where pr. ProductID = od. ProductID

قابل به ذکر است که بیش از ۹۰% از کارهایی که ما برروی جداول انجام می دهیم با select و ترکیبات آن انجام می شود. لذا بدست آوردن تبحر در نوشتن select ها می تواند شما را در تهیه برنامه ها یاری کند.
۳- Min,max : بیشترین و کمترین مقدار فیلد را در بانک اطلاعاتی بدست می دهد.
Select min (Quantity)
from [Order Details]
۴- Top n : تعداد n سطر اول بانک اطلاعاتی را برمی گرداند.

Select top 5 *
from [Order Details]
۵ سطر اول بانک را برمی گرداند.
نکته ۳ : در حالت بالا اگر مقدار سطر ۵ و ۶ یکی باشد فقط سطر ۵ جواب خواهد بود برای گریز از این حالت از شکل زیر در این دستور استفاده میکنیم :

Select top n with ties *
From table

۵- Into
Select * from table1 into table2

اطلاعات table1 را به table2 کپی میکند. البته table2 باید از قبل وجود نداشته باشد.
این دستور خود table2 را میسازد.
دستور select قویترین و کاربردی ترین دستور در sql است که خود ماهها نیازمند تمرین و آموزش است . برای اطلاعات بیشتر به books online خود Sql Server مراجع کنید.

دستور Delete
برای حذف اطلاعات از یک بانک اطلاعاتی استفاده میشود.
شکل کلی دستور :

Delete table1
Where شرط
مثال : فرض کنید جدول authors موجود باشد و فیلد کلید آن au_id باشد. برای حذف ۱۰ سطر اول این جدول از دستور زیر استفاده می کنیم :

DELETE authors
FROM (SELECT TOP 10 * FROM authors) AS t1
WHERE authors.au_id = t1.au_id

دستور insert
برای اضافه کردن اطلاعات به یک جدول از این دستور استفاده میشود.
Insert into table1 (f1,f2,…)
Values (v1,v2,…)

که f1,f2 نام فیلدها و v1,v2 مقادیر آنها میباشد.
البته میتوانید مقادیر را نتیجه یک select قرار داد.
مثال :

Insert into table1
Select top 10
from table2

مقدار ۱۰ سطر اول را از table2 را در table1 درج میکند. البته باید تعداد فیلدها یکی باشد. در غیر اینصورت از values استفاده کنید.
Enterprise Manager

میتوان گفت قلب Sql Server است. در Enterprise Manager شما میتوانید یک اتصال به سرور Sql برقرار کنید . table بسازید. User تعریف کنید و;..
علامت فلش سبز نمایانگر فعال بودن سرور است. سرور میتواند local باشد مانند بالا و یا یک Sqlserver باشد برروی یک سرور . برای ایجاد یک سرور جدید یا به عبارت دیگر وصل شدن client (ویندوز ۹۸) به یک سرور دیگر بر روی یکی Microsoft Sql Server یا SQL Server Group و یا برروی سرور موجود کلیک سمت راست کرده و گزینه New Sql Server Registratin را انتخاب کنید. سپس کلید next را انتخاب کنید. سپس در منوی بعدی در available Server نام سرور خود را تایپ کنید . (نام سرور SQL خود را که برروی ویندوز ۲۰۰۰ خود نصب کرده اید) و بعد کلید add را فشار دهید.و گزینه next را انتخاب کنید.

در پتجره بعد از شما سوال میکند که آیا از username ویندوز استفاده کند و یا اینکه از یک username مخصوص خود Sql Server استفاده کنید. گزینه دوم را انتخاب کرده و سپس Login Name و Password را وارد کنید. (در حالت پیش فرض sa بعنوان login name و فضای خالی بجای Password وارد کنید.) پس از چند بار فشار کلید next شروع به وصل شدن به Server میکند. در صورت موفقیت آمیز بودن با پیامی این کار را اطلاع میدهد.
از دیگر گزینه ها شما بیشترین استفاده را از Databases خواهید کرد. به عبارت دیگر هر کار و پروژه ما بعنوان یک Database در سرور sql قرار میگرد. همه جداول و دستورات مربوط به آنها در این محل نگهداری

می شود.
با کلیک سمت راست برروی Databases و انتخاب New Database; میتوانید یک Database جدید برای خودتان بسازید.
پس از انتخاب نام آن را تایید کنید.
هر Database شامل موارد زیر است :
۱- Diagram : ارتباط جداول را نشان میدهد.

۲- Tables : جداول پروژه را نشان میدهد.
۳- Views : دیدهای پروژه را نشان میدهد.
۴- Stored Procedure : کدهای sql مربوط به عملیاتهای روی جداول را نگهداری میکند.
۵- Users : کاربران تعریف شده بر روی این database را نشان میدهد.
۶- Roles: قوانین دسترسی به جداول و پروسیجرها را نشان میدهد.

۷- Rules : قوانین مربوط به داده ها را در جداول نشان میدهد.
گزینه های ۷ به بعد کاربرد آنچنانی برای کارهای ابتدایی ندارند
ایجاد یک جدول جدید :
برای ایجاد یک جدول جدید بروی tables کلیک سمت راست کرده و گزینه New Table را انتخاب کنید. سپس در کادر بعدی نام جدول را انتخاب کنید. حال فیلدها و نوع آنها را مشخص کنید .
بعد از مشخص کردن نوع و احتمالاً طول فیلد , باید مشخص کنید که آیا فیلد همیشه می بایست مقدار داشته باشد و یا می تواند null باشد. Allow Nulls اگر تیک داشته باشد یعنی اینکه این فیلد می تواند هیچ مقداری به خود اختصاص ندهد.

  راهنمای خرید:
  • در صورتی که به هر دلیلی موفق به دانلود فایل مورد نظر نشدید با ما تماس بگیرید.