ایجاد فایل AddTerm.php برای ایجاد دروه جدید تحصیلی
ایجاد فایل AddTerm.php برای ایجاد دروه جدید تحصیلی:
با سلام به دوستان گرامی:
PHP:
<?php
/**
* @author Mohsen Rasouli
* @copyright 2010
*/
require_once ('../inc/function.php');
require_once ('../inc/config.php');
$db = new Database($db_host, $db_user, $db_pass, $db_name);
$db->connect();
$step= '0';
if(isset($_POST['require'])){
$_SESSION['step'] = '1';
$step= '1';
}
if(isset($_GET['step'])){
$step= $_GET['step'];
if(empty($step)){$step= '0';}
}
echo $header;
echo $sidebar;
$date = jdate("Y");
if ($step == '0') {
echo <<<HTML
<form method="POST" action="$PHP_SELF?step=1">
<table width="700" border="0" cellpadding="0" cellspacing="0" >
<tr valign="top">
<td colspan="2" style="padding:2px 0" align="center" bgcolor="#C0D7F8">اضافه کردن دوره تحصیلی</td>
</tr>
<tr>
<td width="100" style="padding:2px 0">ایجاد دروه
<select name="term_name" >
<option value="نیم سال اول">نیم سال اول</option>
<option value="سال اول">سال اول</option>
<option value="نیم سال دوم">نیم سال دوم</option>
<option value="سال دوم">سال دوم</option>
</select> در سال تحصیلی <input name="term_year" type="text" style="width:40px" value="$date" /></td>
</tr>
<tr valign="top">
<td colspan="2" align="center"><input name="submit" class="btn-g" type="submit" value="ثبت" /></td>
</tr>
</table>
HTML;
}
if ($step == '1') {
$data['term_name'] = $_POST['term_name'];
$data['term_year'] = $_POST['term_year'];
if ($_POST['term_name']) {
if ($_POST['term_year']) {
if ($db->query_insert("terms", $data)) {
echo <<<HTML
<table width="700" border="0" cellpadding="0" cellspacing="0" >
<tr valign="top">
<td colspan="2" style="padding:2px 0" align="center" bgcolor="#C0D7F8">اضافه کردن دوره تحصیلی</td>
</tr>
<tr>
<td align="center">عملیات با موفقیت انجام شد!</td>
</tr>
<tr valign="top">
<td colspan="2" align="center"><br /><a href="AddTerm.php" class="btn-g" >دوره جدید</a> <a href="index.php" class="btn-y">بازگشت</a></td>
</tr>
</table>
HTML;
} else {
echo <<<HTML
<table width="700" border="0" cellpadding="0" cellspacing="0" >
<tr valign="top">
<td colspan="2" style="padding:2px 0" align="center" bgcolor="#C0D7F8">خطا</td>
</tr>
<tr>
<td align="center">عملیات با خطا مواجه شد!</td>
</tr>
<tr valign="top">
<td colspan="2" align="center"><br /><a href="javascript:history.go(-1)" class="btn-r">بازگشت</a></td>
</tr>
</table>
HTML;
}
}else {
echo <<<HTML
<table width="700" border="0" cellpadding="0" cellspacing="0" >
<tr valign="top">
<td colspan="2" style="padding:2px 0" align="center" bgcolor="#C0D7F8">خطا</td>
</tr>
<tr>
<td align="center">خطا در ورود اطلاعات!</td>
</tr>
<tr valign="top">
<td colspan="2" align="center"><br /><a href="javascript:history.go(-1)" class="btn-r">بازگشت</a></td>
</tr>
</table>
HTML;
}
}else {
echo <<<HTML
<table width="700" border="0" cellpadding="0" cellspacing="0" >
<tr valign="top">
<td colspan="2" style="padding:2px 0" align="center" bgcolor="#C0D7F8">خطا</td>
</tr>
<tr>
<td align="center">خطا در ورود اطلاعات!</td>
</tr>
<tr valign="top">
<td colspan="2" align="center"><br /><a href="javascript:history.go(-1)" class="btn-r">بازگشت</a></td>
</tr>
</table>
HTML;
}
}
echo $footer;
$db->close();
?>
این کد هایی رو که می بینید برای ایجاد دروه تحصیلی بود که قبلا دبیتا بس اون را ساخته بودیم.
حالا می پدازیم به توضیحات کد های نوشته شد:
PHP:
require_once ('../inc/function.php');
require_once ('../inc/config.php');
$db = new Database($db_host, $db_user, $db_pass, $db_name);
$db->connect();
کد هایی که در بالا مشاهده می کنید برای وارد کردن توابع و کلاس هایی که قبلا در
فایل اولیه آورده شده بکار می بریم.
من برای سادگی انجام کا برای این اسکریپت کلاس Database رو مورد استفاده قرار میدم که آموزش و نمونه های اون به نام examples.html در فایل اولیه آروده شد.
PHP:
$step= '0';
if(isset($_POST['require'])){
$_SESSION['step'] = '1';
$step= '1';
}
if(isset($_GET['step'])){
$step= $_GET['step'];
if(empty($step)){$step= '0';}
}
این کد ها برای تعریف کردن این هست که چک کنه اگه ما اطلاعات یه فرم رو فرستادیم ، اطلاعات رو دوباره به همین صفحه برگردونه و به قسمت بعدی که توسط if ($step == 'part number') //sharte enteghal تعریف می شود رو پردازش کنه.
PHP:
echo $header;
echo $sidebar;
$date = jdate("Y");
if ($step == '0') {
این قسمت برای نمایش دادن قسمت هایی هست که در فایل function.php نوشته شده که برای نمایش سربرگ و منو های و تعریف کردن متغیر سال شمسی برای برای نمایش سال تحصیلی نوشته شده اند.
PHP:
echo <<<HTML
<form method="POST" action="$PHP_SELF?step=1">
<table width="700" border="0" cellpadding="0" cellspacing="0" >
<tr valign="top">
<td colspan="2" style="padding:2px 0" align="center" bgcolor="#C0D7F8">اضافه کردن دوره تحصیلی</td>
</tr>
<tr>
<td width="100" style="padding:2px 0">ایجاد دروه
<select name="term_name" >
<option value="نیم سال اول">نیم سال اول</option>
<option value="سال اول">سال اول</option>
<option value="نیم سال دوم">نیم سال دوم</option>
<option value="سال دوم">سال دوم</option>
</select> در سال تحصیلی <input name="term_year" type="text" style="width:40px" value="$date" /></td>
</tr>
<tr valign="top">
<td colspan="2" align="center"><input name="submit" class="btn-g" type="submit" value="ثبت" /></td>
</tr>
</table>
HTML;
}
در این قسمت همون طور که مشاهده می کنید با استفاده از [LTR]if (step =='0')[/LTR] تعریف کردیم که وقتی مرورگر صفحه رو درخواست می کنه فرم رو نشون بده و بعد از دریافت اطلاعات مورد نظر اون رو به [LTR]$_PHPSELF?step=1[/LTR] که در واقع همان صفحه است ما به if استپ 1 رجوع کرده و اطلاعات رو به قسمت دوم ارسال کنه.
PHP:
if ($step == '1') {
$data['term_name'] = $_POST['term_name'];
$data['term_year'] = $_POST['term_year'];
if ($_POST['term_name']) {
if ($_POST['term_year']) {
if ($db->query_insert("terms", $data)) {
echo <<<HTML
<table width="700" border="0" cellpadding="0" cellspacing="0" >
<tr valign="top">
<td colspan="2" style="padding:2px 0" align="center" bgcolor="#C0D7F8">اضافه کردن دوره تحصیلی</td>
</tr>
<tr>
<td align="center">عملیات با موفقیت انجام شد!</td>
</tr>
<tr valign="top">
<td colspan="2" align="center"><br /><a href="AddTerm.php" class="btn-g" >دوره جدید</a> <a href="index.php" class="btn-y">بازگشت</a></td>
</tr>
</table>
HTML;
} else {
echo <<<HTML
<table width="700" border="0" cellpadding="0" cellspacing="0" >
<tr valign="top">
<td colspan="2" style="padding:2px 0" align="center" bgcolor="#C0D7F8">خطا</td>
</tr>
<tr>
<td align="center">عملیات با خطا مواجه شد!</td>
</tr>
<tr valign="top">
<td colspan="2" align="center"><br /><a href="javascript:history.go(-1)" class="btn-r">بازگشت</a></td>
</tr>
</table>
HTML;
}
}else {
echo <<<HTML
<table width="700" border="0" cellpadding="0" cellspacing="0" >
<tr valign="top">
<td colspan="2" style="padding:2px 0" align="center" bgcolor="#C0D7F8">خطا</td>
</tr>
<tr>
<td align="center">خطا در ورود اطلاعات!</td>
</tr>
<tr valign="top">
<td colspan="2" align="center"><br /><a href="javascript:history.go(-1)" class="btn-r">بازگشت</a></td>
</tr>
</table>
HTML;
}
}else {
echo <<<HTML
<table width="700" border="0" cellpadding="0" cellspacing="0" >
<tr valign="top">
<td colspan="2" style="padding:2px 0" align="center" bgcolor="#C0D7F8">خطا</td>
</tr>
<tr>
<td align="center">خطا در ورود اطلاعات!</td>
</tr>
<tr valign="top">
<td colspan="2" align="center"><br /><a href="javascript:history.go(-1)" class="btn-r">بازگشت</a></td>
</tr>
</table>
HTML;
}
}
در این قسمت همون طور که مشاهده می کنید اطلاعات ارسال شده از فرم رو که در [LTR]if (step =='0')[/LTR] به [LTR]if (step =='1')[/LTR] فرستادیم با کلاس دیتابیس که قبلا دربارش صحبت کردیم تلفیق می کردیم. سپس با چندتا if تو در تو تعریف کردیم که اگه اطلاعات توسط کابر وارد نشده بود با پیام خطا مواجه بشه و برگرده اطلاعات رو تصحیح کنه.
سپس اگه اطلاعات رو درست وارد کرده بود ، اونارو تو دیتابیس مورد نظرش ثبت کنه.
PHP:
echo $footer;
$db->close();
این هم که معلومه دیگه نیازی به توضیح نداره که پاصفه رو نمایش میده و دیتابیس رو جهست امنیت بیشتر و فشار به سی پی یو سرور کمتر سرور کمتر بشه مینبنده.
ببخشید که یکم طولانی شد.
امید وارم که واضح توضیح داده باشم.
اگه من درست توضیح ندادم بذار به حساب ناآگاهی من از عنوان کاربر کوچک از مجمعه بزرگ مجید آنلاین.
با تشکر
محسن رسولی