تحقیق درباره مبانی PHP
تحقیق درباره مبانی PHP
Php یک زبان قدرتمند برای ساخت وب سایتهای پویا و محاوره ای است . این زبان اسکریپتی می تواند با html ادغام شود . نکته بعدی که باید در مورد این زبان بدانید این است که php یک زبان اسکریپتی در سرویس دهنده است . برنامه php در سرویس دهنده وب تفسیر می شود و html یا خروجی های دیگری تولید می کند که کاربر مشاهده خواهد کرد .
Php در سال 1994 توسط rasmus lerdorf ارائه شد . از آن زمان ، تغییرات زیادی در آن ایجاد شده است ، به طوری که تا نسخه های 5.00 آن نیز در حال ارائه است . رشد آن آنقدر زیاد بوده است که امروزه بسیاری از طراحان وب از آن برای پیاده سازی صفحات وب استفاده می کنند .
ويژگی های مهم php
از نظر تکنیکی ،php دارای ویزگی های زیر است :
· مستقل از محیط کار کدهای php را بدون انجام تغییرات در کامپیوترهایی با سیستمهای عامل مختلف می توان بکار برد . به عنوان مثال ، اسکریپت php که بر روی لینوکس اجرا می شود ، بر روی ویندوز نیز اجرا خواهد شد .
· ادغام در html کد php در فایلهایی که حاوی دستورات html هستند نوشته می شود.
· اجرا در سرویس دهنده کدهای php که می نویسیم ، بر روی سرویس دهنده وب اجرا می شوند .
· زبان اسکریپتی وب برنامه های php را بوسیله مرورگر اجرا می کنیم . به وب سایتی که برنامه های php قرار دارند دستیابی پیدا می کنیم . به این ترتیب کد php اجرا شده نتیجه آن به مرورگر برمی گردد. با استفاده از php می توان سایتهایی نوشت که :
1. داده ها را از منابع مختلفی مثل بانکه ای اطلاعاتی یا فایل ها جمع آوری کند.
2. عناصر محاوره ای مثل امکانات جست و جو ، تابلو های پیام و مناظره ها را در بر گیرد .
3. به کاربر اجازه می دهد فعالیت هایی مثل ارسال نامه الکترونیکی ، یا خرید را انجام دهد .
به عبارت دیگر php برای نوشتن وب سایتهایی به کار می رود که کاربران روزانه با آنها سروکار دارند . یعنی php می تواند برای نوشتن سایتهای تجارت الکترونیک ، موتورهای جستجو ، دروازه های اطلاعات و سایتهای معمولی به کار رود .
· مبادله فایلها یعنی می توانیم از طریق مرورگر ، فایلهایی را در سرویس دهنده ایجاد کرده از بین ببریم .
· فروشگاه اقلام اینترنتی بطوری که می توان اقلام فروشگاه را در یک نقشه نشان داد .
· پردازش بانکها ی اطلاعاتی به این ترتیب می توانیم تمام داده ها در بانک اطلاعاتی ذخیره و از آن بازیابی کرد .
· خدمات لیست پستی به کاربران اجازه میدهد عضو لیستهای پستی مختلف شوند . علاوه بر این ، مدیران لیست می توانند به اعضا نامه الکترونیکی ارسال کنند .
بعضی از قدرتهای php
Php در مقایسه با رقبای خود مثل perl، asp، jsp، allaire goldfusion دارای قدرتهای زیر است :
· کارایی بالا php بسیار کارآمد است . با استفاده از سرویس دهنده ارزان می توانید روزانه به میلیون نفر پاسخ دهید . سایت http://www.zend.com کارایی php را در مقابل رقبایش نشان می دهد .
· ارتباط با بانکهای اطلاعاتی مختلف php به راحتی می تواند با سیستمهای بانک اطلاعاتی مختلفی ارتباط برقرار کند . علاوه بر سیستم بانک اطلاعاتی رابطه ای mysql ، به راحتی می توانید با اوراکل ، Sybase و غیره ارتباط برقرار کنید . با استفاده از استاندارد ODBC می توانید با ر بانک اطلاعاتی که حاوی درایو ODBC است ، ارتباط برقرا کنید .
· کتابخانه ای برای اغلب کارهای متداول وب چون php برای بکار گیری در وب طراحی شد ، حاوی توابع زیادی برای اجرای کارهای مربوط به وب است . براحتی می توان تصاویر GIF را ساخت ، به سایر خدمات شبکه متصل شد ، نامه الکترونیکی ارسال کرد ، با کوکی ها کار کرد ، اسناد PDF را تولید نمود .
· هزینه اندک php رایگان است . آخرین نسخه php را می توان ار سایت آن ، www.php.net برداشت .
· آموزش و بکارگیری آن ساده است نحوه زبان php خیلی شبیه به c است . اگر با زبان c و c++ یا java آشنا باشیم ، به راحتی می توانیم با php کار کنیم .
· قابل حمل php برای سیستم های عامل مختلفی مهیا است .کد php را می توان در نسخه های مختلف یونیکس و ویندوز اجرا کرد . حتی می توان کدهای نوشته شده برای یک سیستم عامل را در سیستم عامل دیگر استفاده نمود .
· کد منبع php مهیا است می گویند php رایگان و open source است . حتی اصلاحاتی را در کد آن ایجاد کرد . به عبارت دیگر ، می توان تغییراتی را در این زبان به وجود آورد .
نیازمندیهای کار با php
برای اینکه بتوانید از php استفاده کنید و برنامه هایی را در این زبان بنویسید و اجراکنید ، به موارد زیر نیاز دارید :
· سخت ا فزار
1. کامپیوتر
2. مودم
· نرم افزار سرویس دهنده
3. سرویس دهنده ای مثل IIS یا apache
4. php که در کامپیوتر نصب شده باشد
5. سیستم مدیریت بانک اطلاعاتی زابطه ای مثل mysql ، sql server ، اوراکل یا اکسس .
· نرم افزار سرویس گیرنده
1. مرورگر وب مثل internet explorer
2. ویراستار متنی مثل notepad برای تایپ کد php
معمولا طراحان وب ، در یک کامپیوتر و با ایستفاده از سرویس دهنده وب مثل iis ، تمام برنامه های وب سایت را می نویسند . اگر از ویندوز 95، 98، xp ، 2000 یا 2003 استفاده می کنید ، سرویس دهنده هایی برای آنها مهیا است . در ویندوزهای 95و98 سرویس دهنده وبی به نام PWS وجود دارد که می توانید برنامه های php را با استفاده از آن تست و اجرا کنید . به همراه ویندوزهای 2000، NT ،XP سرویس دهنده وبی به نام IIS وجود دارد که می توانید با استفاده از آن ، برنامه های php را تست و اجرا کنید .
جایگاه php کجاست ؟
سرویس دهنده وب باید صفحه درخواستی را بیابد . اگر آن صفحه ، صفحه php باشد ، سرویس دهنده وب باید php را پردازش کند تا کد html را تولید کرده به مرورگر بفرستد . در این مرحله ، اگر نا مصفحه با پسوند php . مشخص شود ، سرویس دهنده آن را به موتور اسکریپت php می فرستد تا پردازش شود .
مهمترین قابلیت برنامه نویسی که در html تعبیه می شود ، اسکریپت نام دارد . چون html نمی تواند به عنوان یک زبان برنامه نویسی توصیف شود ، و قابلیت های محدودی به جز نمایش متن و تصویر دارد ، نوشتن فرمان هایی به زبان های دیگر که بتواند به قابلیت های آن بیفزاید ، ضروذی است . این زبان ها را زبان های اسکریپتی می نامند . زبان های اسکریپتی فراوانی وجود دارند ، مثل java script و perl . اما تفاوت php با javascript – hml این است که php در سرویس دهنده وب اجرا می گردد ، نه در سرویس گیرنده ( مرورگر ).
اسکریپت ها در هر جایی از کد html می توان نوشت . وقتی صفحه وب درخواست می شود اسکریپتهای موجود در آن به موتور اسکریپت فرستاده می شود تا تفسیر گردند و کد html تولید شود . اسکریپتها اساس php هستند و موجب تولید صفحات پویا می شوند .
تفسیر اسکریپت php می تواند در دو مرحله انجام شود . وقتی صفحه به موتور php ارسال می گردد ، دو چیز اتفاق می افتد . ابتدا صحت اسکریپت php کنترل می شود که عمل تجزیه نام دارد . مرحله دوم که اجرا نما دارد ، پس از تجزیه اسکریپت صورت می کیرد . اجرا به معنای تبدیل اسکریپت به کد html است . در هر یک از این دو مرحله ، موتور php می تواند خطایی را به مرورگر اعلان کند .
معرفی یک ویراستار برای php
تاکنون برای تایپ برنامه های php از ویراستار ساده notepad استفاده کردیم .سپس برای اجرای برنامه های php ، مرورگر را راه اندازی کرده در نوار آدرس آن ، مشخصات برنامه hph را وارد کردیم تا اجرا کنیم .
اگر از این روش نمی توانید استفاده کنید ، یک ویراستار رایگان را برای php به شما معرفی می کنم که باید آن را از سایت زیر بردارید :
http;//www.mpsoftware.dk/phpdesigner.php
پس از اینکه این برنامه را از سایت برداشتید ، آن را بر روی سیستم خود نصب کنید .
این برنامه دارای امکانات بسیار زیادی است ، از جمله :
· Php-html-xhtml-css& sql
· Templates
· Custom tags
· Php manual
· File browser
· Html wizard
· Class browser
· Task manager
· ftp support
· code libraries
· and many other
استفاده مجدد از کد
یکی از اهداف مهندسین نرم افزار این است که برای توسعه نرم افزار ، به جای نوشتن کد ، از کدهای موجود استفاده کنند .این مفهوم را استفاده مجدد از کد گویند . استفاده مجدد از کد ، هزینه ها کاهش می دهد ، قابلیت اعتماد را بالا می برد و میزان یکپارچگی و سازگاری را افزایش می دهد . ایده آل این است که پروزه های جدید با ترکیبی از کدهای موجود ساخته شوند .
راه های استفاده مجدد از کد
دو روش برای این کار وجود دارد :
1. استفاده از توابع
2. استفاده از فایلهای موجود
در روش اول ، توابعی در برنامه نوشته می شود و می توانند چندین بار فراخوانی شوند ، ولی در روش دوم ، می توان از برنامه هایی که در فایلهای دیگر وجود دارند ، در برنامه جدید استفاده کنند .
نمایش صفحات سایت و کدهای مربوط به آن
صفحه اصلی
<html>
<head>
<title>Login</title>
</head>
<body BGCOLOR=#ece9d8></p>
<table bgcolor="#FFFFFF" height="383" width="695">
>td width="689"> <tr>
<p align="center">
<embed src="banner.swf" border="0" width="689" height="160"></td>
<tr> </tr>
<td bgcolor="#333333" width="724">
<marquee direction="right" vspace="3" hspace="10" scrolldelay="60" scrollamount="2" onMouseOver="this.stop()" onMouseOut="this.start()" width="704"> <span class="marquee_news"><img src="../images/left_arow.gif" align="middle" /><font color=white>با ثبت نام و ورود به سایت می توانید از امکانات این سایت استفاده کنید</font> <img src="../images/right_arrow.gif" align="middle" /></span></marquee></td>
<tr></tr>
<td valign="top" width="724">
<table width="689" border="0" cellspacing="0" cellpadding="10" height="89">
<tr>
<td height="287" valign="top" dir="rtl" width="235"><div align="center">
<img border="0" src="../images/Build2.jpg" width="235" height="216"><td height="267" valign="top" dir="rtl" width="414">
<img src="../images/Build1.jpg" name="I1" width="263" height="217" ></img>
</img><br />
<form method="get" action="switch3.php">
<div align="center"><center>
<h3>Welcome to Home page</h3>
<table border="0" width="159" cellpadding="2">
<tr>
<th width="72" align="right" nowrap colspan="2">User ID</th>
<td width="73" nowrap>
<input type="text" name="userid" size="8">
<input type="hidden" name="log" >
<tr> </tr> </td>
<th width="72" align="right" nowrap colspan="2">Password</th>
<td width="73" nowrap>
<input type="password" name="userpassword" size="8">
<tr></tr></td>
<td width="10" align="center" nowrap>
</td>
<td width="56" align="center" nowrap>
</td>
<td width="73" align="center" nowrap>
<input border="10" src="../html/v1.gif" name="I3" width="53" height="19" type="image"></td>
</table></tr>
</form> </center></div>
<center>Hello Now: Wed, 17 May 2006 10:05:52 <br><br> <table> <tr>
<td height="228" valign="top" dir="rtl" width="235"> <td height="228" valign="top" dir="rtl" width="414">
<p><font color="#008000" size="5"><span class="blue-header" >نكات اساسي در مورد کتابخانه آنلاین: </span>
</font>
<UL>
<LI><b><font face="Times New Roman" size="2">
<span style="background-color: #FFFFFF">با ثبت نام و تایید ورود، می توانید از امکانات این سایت استفاده
کنید</span></font></b></LI>
<LI><b><font face="Times New Roman" size="2">
<span style="background-color: #FFFFFF">امکان تقاضای دو کتاب و رزرو کتابها در مدت 24 ساعت</span></font></b></LI>
<LI><b><font face="Times New Roman" size="2">
<span style="background-color: #FFFFFF">امکان امانت گرفتن دو کتاب در 7 روز و تمدید آنها به مدت هفت روز</span></font></b></LI>
<LI><b><font face="Times New Roman" size="2">
<span style="background-color: #FFFFFF">رسیدگی به نظرات و انتقادات شما در سریع ترین وقت </span></font></b> </LI>
<LI><b><font face="Times New Roman" size="2">
<span style="background-color: #FFFFFF">اخبار جدید کتابخانه</span></font></b></LI>
<LI><b><font face="Times New Roman" size="2">
<span style="background-color: #FFFFFF">جستجوی کتابها برای اعضای کتابخانه </span></font></b> </LI>
<LI><b><font face="Times New Roman" size="2">
<span style="background-color: #FFFFFF">گالری عکس
</span></font></b> </LI>
<LI><b><font face="Times New Roman" size="2">
<span style="background-color: #FFFFFF">توضیحات درباره بخشهای مختلف کتابخانه</span></font><font face="Times New Roman"><span style="background-color: #FFFFFF">
</span></font></b> </LI>
</UL>
</tr>
<tr>
<td height="2017" valign="top" dir="rtl" width="235"> <td height="2017" valign="top" dir="rtl" width="414">
</tr>
<tr>
<td height="176" valign="top" dir="rtl" width="235"> <td height="174" valign="top" dir="rtl" width="414">
</tr>
</table>
<form method="get" action="switch3.php">
</form>
</body>
</html>
صفحه مدیر
<<body background=../aksbook1.jpg><form method="get" action="login1.php">
<input type="hidden" name="s_out" >
<input type="submit" value="Sign out" name="Sign out">
</form><br><br><br><br><table border ="1" align = "center"><tr><td align = "center"><b> Welcome ADMIN </b></td></tr></table><Center><A HREF=searchbook.php>Search book</a><br><A HREF=admverify.php>See Control User</a><BR><A HREF=showfeed.php>See Feed Backs</a>
صفحه کتابدار
<form method="get" action="login1.php">
<input type="hidden" name="s_out" >
<input type="submit" value="Sign out" name="Sign out">
</form><table border ="1" align = "center"><tr><td align = "center"><b> Welcome librarian </b></td></tr></table><A HREF=searchbook.php>Search book</a><br><A HREF=tamdid1.php>TAMDID</a><br>>
درخواست کتاب
<html>
<head>
<script language = "JavaScript">
<!--
function do_check (form))
if (form.query.value)=="")
alert('Please make an entry in the product search field.');
{ return false;
} else
{ return true;
}
-->
</script>
</head>
<body bgcolor = "#000080" text = "#FFFFFF" link = "#FFFF00" vlink = "#FFFFFF" alink = "#FF0F0F">
<h2><center> My library</center></h2>
<table border="0" cellpadding="0" cellspacing="0" align = "center">
<tr>
<td bgcolor = "#dfdfdd" nowrap >
</table></tr></td>
<br>
<form action = "searchbook.php" method = "post" onSubmit = "return do_check(this);">
<table border="0" cellpadding="0" cellspacing="0" align = "center"><tr>
<input type="hidden" name="srch" >
<td bgcolor = "#008080" nowrap>
<b> Search Book </b>
<select name = "field">
<option value = "name"> By Name
<option value = "writer"> By Writer
<option value = "group"> By Group
<option value = "barcode"> By Barcode
</select>
<input type = "text" name = "query" size = "25" maxlength = "50" >
<input type="submit" value= " Search " name="submitButton">
</table></tr></td>
</form>
</body>
wellcome 1235 <table border="1" width="200" cellpadding="2" align="center">
<form method="get" action="request1.php">
<div align="center"><center>
<tr>
<th width="18%" align="right" nowrap>Enter barcode for insert</th>
<td width="82%" nowrap>
<input type="text" name="b2" size="8"></td>
<input type="hidden" name="ins" size="8"></td>
<tr> </tr>
<td width="100%" colspan="2" align="center" nowrap>
<input type="submit" value="insert" name="insert">
</table></tr></td>
</html>
صفحه تمدید
<HTML><body background="test/ketb_takhs_muzh3 .jpg" >
<div id="dot0" style="position: absolute; visibility: hidden; height: 11; width: 11;">
<img src="t1.gif" height=11 width=11>
</div>
<div id="dot1" style="position: absolute; height: 11; width: 11;">
<img src="t1.gif" height=11 width=11>
</div>
<div id="dot2" style="position: absolute; height: 11; width: 11;">
<img src="t1.gif" height=11 width=11>
</div>
<div id="dot3" style="position: absolute; height: 11; width: 11;">
<img src="t1.gif" height=11 width=11>
</div>
<div id="dot4" style="position: absolute; height: 11; width: 11;">
<img src="t1.gif" height=11 width=11>
</div>
<div id="dot5" style="position: absolute; height: 11; width: 11;">
<img src="t1.gif" height=11 width=11>
</div>
<div id="dot6" style="position: absolute; height: 11; width: 11;">
<img src="t1.gif" height=11 width=11>
</div>
<script LANGUAGE="JavaScript">
<!-- hide code
var nDots = 7;
var Xpos = 0;
var Ypos = 0;
// fixed time step, no relation to real time
var DELTAT = .01;
// size of one spring in pixels
var SEGLEN = 10;
// spring constant, stiffness of springs
var SPRINGK = 10;
// all the physics is bogus, just picked stuff to
// make it look okay
var MASS = 1;
// Positive XGRAVITY pulls right, negative pulls left
// Positive YGRAVITY pulls down, negative up
var XGRAVITY = 0;
var YGRAVITY = 50;
// RESISTANCE determines a slowing force proportional to velocity
var RESISTANCE = 10;
// stopping criterea to prevent endless jittering
// doesn't work when sitting on bottom since floor
// doesn't push back so acceleration always as big
// as gravity
var STOPVEL = 0.1;
var STOPACC = 0.1;
var DOTSIZE = 11;
// BOUNCE is percent of velocity retained when
// bouncing off a wall
var BOUNCE = 0.75;
var isNetscape = navigator.appName=="Netscape";
// always on for now, could be played with to
// let dots fall to botton, get thrown, etc.
var followmouse = true;
var dots = new Array();
init();
function init()
{var i = 0;
for (i = 0; i < nDots; i++) {
dots[i] = new dot(i);
}
if (!isNetscape) {
// I only know how to read the locations of the
// <LI> items in IE
//skip this for now
// setInitPositions(dots)
}
// set their positions
for (i = 0; i < nDots; i++) {
dots[i].obj.left = dots[i].X;
dots[i].obj.top = dots[i].Y;
}
if (isNetscape) {
// start right away since they are positioned
// at 0, 0
startanimate();
} else {
// let dots sit there for a few seconds
// since they're hiding on the real bullets
setTimeout("startanimate()", 1000);
}
}
function dot(i)
{
this.X = Xpos;
this.Y = Ypos;
this.dx = 0;
this.dy = 0;
if (isNetscape) {
this.obj = eval("document.dot" + i);
} else {
this.obj = eval("dot" + i + ".style");
}
}
function startanimate() {
setInterval("animate()", 20);
}
// This is to line up the bullets with actual LI tags on the page
// Had to add -DOTSIZE to X and 2*DOTSIZE to Y for IE 5, not sure why
// Still doesn't work great
function setInitPositions(dots)
{
// initialize dot positions to be on top
// of the bullets in the <ul>
var startloc = document.all.tags("LI");
var i = 0;
for (i = 0; i < startloc.length && i < (nDots - 1); i++) {
dots[i+1].X = startloc[i].offsetLeft
startloc[i].offsetParent.offsetLeft - DOTSIZE;
dots[i+1].Y = startloc[i].offsetTop +
startloc[i].offsetParent.offsetTop + 2*DOTSIZE;
}
// put 0th dot above 1st (it is hidden)
dots[0].X = dots[1].X;
dots[0].Y = dots[1].Y - SEGLEN;
}
// just save mouse position for animate() to use
<form action = "tamdid1.php" method = "get" onSubmit = "return do_check(this);">
<table bgcolor=pink border="10" cellpadding="0" cellspacing="0" align = "center">
<tr>
<td bgcolor = pink nowrap>
<b> tamdid book Enter User ID: </b>
<INPUT type="hidden" name=chk>
<input type = "text" name = "user" size = "25" maxlength = "50" >
<input type="submit" value="Search" name="submitButton">
</tr></td>
</table>
</form>
<form action = "tamdid1.php" method = "GET" onSubmit = "return do_check(this);">
<table bgcolor=pink border="10" width="200" cellpadding="2" align="center">
<tr>
<th width="18%" align="right" nowrap>User ID</th>
<td width="82%" nowrap>
<input type="text" name="user" size="8">
<input type="hidden" name="instamanat" >
</tr></td>
<tr>
<th width="18%" align="right" nowrap>isbn</th>
<td width="82%" nowrap>
<input type="text" name="isbn" size="8">
</tr></td>
<tr>
<td width="100%" colspan="2" align="center" nowrap>
<input type="submit" value="insertt" name="Submit">
</tr> </td>
</table></form>
<br><br><br>
</font></body >
</html>
منبع : سايت علمی و پژوهشي آسمان--صفحه اینستاگرام ما را دنبال کنیداين مطلب در تاريخ: پنجشنبه 21 اسفند 1393 ساعت: 10:21 منتشر شده است
برچسب ها : تحقیق درباره مبانی PHP,ويژگی های مهم php,بعضی از قدرتهای php,نیازمندیهای کار با php,جایگاه php کجاست ؟,