PDA

View Full Version : بررسی اصول php (سلسله مقالات)



Spoofed
جمعه 28 فروردین 1383, 11:07 صبح
در تعدادی مقاله بسیار ساده قصد بررسی اصول اولیه php را خواهیم داشت.


قسمت اول : مفهوم سایت های استاتیک (ایستا) و داینامیک (پویا)

یک وب سایت مجموعه ای است از صفحات HTML . هنگامی که صفحه ای را توسط مرورگر وب باز می کنید ، مرورگر قادر به دنبال کردن دستورات زبان HTML می باشد و صفحه ی نهایی را آنگونه که هست رندر کرده و نمایش می دهد. برای مثال سورس یک صفحه ی ساده وب را در نظر بگیرید :


<html>
<title>An Average Website</title>
<body bgcolor="#003399" text="#ffcc33">
<h1>An Average Website</h1>
<p>This is an average website.
</html>

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

زبان های بسیاری برای تولید صفحات پویای وب مهیا هستند و ما در اینجا قصد بررسی php را داریم. Php‌ به معنای Hypertext Preprocessor می باشد.

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

بازدیدکنندگان برای مشاهده ی صفحات تولید شده توسط php تنها به یک مرورگر وب نیاز دارند زیرا محتویات پویا در سرور تولید می شود و در نهایت یک صفحه ی استاتیک HTML تولید می گردد .

برای ایجاد صفحات استاتیک وب با تگ های استاندارد HTML سروکار داریم. نوشتن صفحات php نیز مشابه ایجاد صفحات معمولی HTML است با این تفاوت که کدهای php درون کدهای HTML صفحه قرار می گیرند.

برای مثال سورس زیر را که ساعت جاری سرور را بر می گرداند ملاحظه نمایید (در مورد جزئیات آن در قسمت های بعدی توضیح داده خواهد شد) :


<html>
<h3>The Date & Time: </h3>
<? echo (date ("l dS of F Y h:i:s A")); ?>
</html>

همانطور که مشاهده می نمایید کدهای php با علامت ?> آغاز و با علامت <? خاتمه می یابند . همچنین برای شروع کدهای php می توان از <?php نیز بهره جست یعنی هر دو مورد زیر مجاز هستند :


<? ... ?>
<?php ... ?>

هنگامیکه یک صفحه ی پویای php از سرور درخواست می شود ، سرور قسمت های دینامیک را ترجمه کرده و یک صفحه ی استاتیک html تولید می کند. بنابراین کاربران هرگز سورس صفحات پویای شما را نخواهند دید و صرفا تگ های نهایی html تولید شده برای آنها قابل مشاهده است.


پایان قسمت اول
Barnamenevis.org (c) All rights Reserved - 2004

Spoofed
شنبه 29 فروردین 1383, 21:24 عصر
قسمت دوم: اولین برنامه ی php ما


تذکری در مورد پسوند فایلها :

هر چند کدهای php درون کدهای HTML قرار می گیرند اما باید پسوند فایل نهایی php و یا php3 باشد. در غیر اینصورت وب سرور پردازشی را در مورد کدهای php قرار گرفته درون کدهای HTML انجام نمی دهد.


اولین کد (my_1st_prj.php) :


<html>
<h3>My first PHP Program</h3>
<? echo "Hello world!"; ?>
</html>

کد ساده ی فوق از ترکیبی از Php و html ایجاد شده است. همانطور که ملاحظه می نمایید دستور زبان php شبیه به زبان سی می باشد. در مورد تابع echo نیازی به آوردن پرانتزها نیست و خاتمه ی کد با یک سمی کولون مشخص شده است. آرگومان ورودی تابع echo حتما باید از نوع رشته ای باشد. از این تابع برای نمایش اطلاعات روی صفحه می توان استفاده کرد.


متغیرها در php :

متغیرها در php با علامت دلار( $ ) مشخص می شوند و الزاما نیازی به تعریف نوع آنها وجود ندارد (یک متغیر می تواند رشته ، عدد و ... باشد). برای مثال :


$a;

و اصول کلی تعریف متغیرها در مورد آنها صادق است برای مثال حتما باید یک کلمه باشند ، بهتر است از اسامی معنا دار استفاده شود و ....


انواع عملگرها در php :



$a + $b (جمع دو متغیر )
$a - $b (تفریق)
$a * $b (ضرب)
$a / $b (تقسیم)
$a % $b (باقیمانده)



تمرین :

اسکریپتی بنویسید که آدرس آی پی و نوع مرورگر بازدید کننده را روی صفحه نمایش دهد.
(راهنمایی : از متغیر از پیش تعریف شده ی $HTTP_USER_AGENT برای تعیین نوع مرورگر و از متغیر $REMOTE_ADDR برای تعیین آی پی بازدید کننده استفاده می شود. )


ساده است! نه؟ (;

پایان قسمت دوم
Barnamenevis.org (c) All rights Reserved - 2004

Spoofed
دوشنبه 31 فروردین 1383, 11:15 صبح
قسمت سوم : نصب موارد مرتبط برای اجرای اسکریپت های php تحت لینوکس


در ادامه روش نصب سریع مای اس کیو ال ، وب سرور آپاچی و php تحت لینوکس بررسی می گردد:

1- نصب mysql :

خوشبختانه تمام RPM های آن در سایت www.mysql.com قابل دریافت هستند و به سادگی نصب می شوند و به این صورت نکته ی خاصی ندارند.

2- نصب apache :

پس از دریافت سورس کامل آن از سایت رسمی مربوطه ، روش کامپایل کردن آن به صورت زیر است :

ابتدا بسته را از حالت gzip خارج کنید و به دایرکتوری مربوطه وارد شوید. سپس دستورات زیر را به ترتیب در خط فرمان وارد نمایید :


./configure --prefix=/usr/local/apache_X.X.X/ --enable-module=so
make
make install

در اولین فرمان، X.X.X همان ورژن آپاچی می باشد که باید مطابق با بسته ای که دریافت کرده اید اصلاح شود.

سپس با استفاده از دستورات زیر می توان این وب سرور را اجرا و یا متوقف کرد :


/usr/local/apache_X.X.X/bin/apachectl start
/usr/local/apache_X.X.X/bin/apachectl stop

3- در ادامه نوبت به نصب php می رسد. سورس کامل برای لینوکس از سایت رسمی آن قابل دریافت است. پس از زیپ گشایی بسته مربوطه فرامین زیر را در خط فرمان (در دایرکتوری جاری بسته باز شده) اجرا نمایید :


./configure --with-mysql --with-apxs=/usr/local/apache_X.X.X/bin/apxs
make
make install

4- اکنون نوبت به تنظیمات وب سرور آپاچی می رسد. فایل httpd.conf آنرا در یک ادیتور متنی باز کنید. این فایل اکنون باید در مسیر زیر قرار داشته باشد :


/usr/local/apache_X.X.X/conf/httpd.conf

دو خط زیر را به آن اضافه نمایید :


AddType application/x-httpd-php .phtml .php
AddType application/x-httpd-php-source .phps

سپس نام سرور را به لوکال تنظیم کنید :


ServerName 127.0.0.1

و از بودن مورد زیر در فایل فوق اطمینان حاصل نمایید :


LoadModule php4_module libexec/libphp4.so

5- پایان!

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

(در مورد معنای تنظیمات فوق در قسمت بعدی توضیح داده خواهد شد.)

پایان قسمت سوم
Barnamenevis.org (c) All rights Reserved - 2004

h.r.t.69
شنبه 01 خرداد 1389, 09:01 صبح
بقیه اش کو؟