ایجاد پنل مدیریت سایت با PHP - ویرایش و حذف برند

php-edit-remove-brands

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

اما؛ برای انجام اینکار، چه باید کرد؟ یک بار دیگر توجه شما عزیزان را به این نکته جلب می کنم . اگر wamp را روشن کنید و آدرس http://localhost/ecommerce/admin_area/index.php را در مرورگر خودتان وارد نمایید، سپس از گزینه های سایدبار سمت راست بر روی گزینه ی "مشاهده تمامی برندها " کلیک کنید، تصویری همانند تصویر زیر برای شما به نمایش در خواهد آمد.

لیست تمامی برندهای موجود

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

برای دیدن کدهای این لینکها (لینک های ویرایش و حذف) کافی است که به آدرس C:\wamp\www\ecommerce\admin_area مراجعه نمایید و فایل view_brands.php را با استفاده از Notepad++ باز کنید و لینک هایی که در تصویر زیر به آنها اشاره شده است را بیابید.

لینک حذف و ویرایش برندها

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

با توجه به توضیحات بالا، وقتی ما بر روی لینک ویرایش فشار می دهیم، ما را به مقصد فایل index.php می فرستد، البته پارامتر edit_brand را که با مقدار id برند، مقدار دهی شده است،  نیز فرستاده می شود.

به طور مشابه وقتی ما بر روی لینک حذف فشار می دهیم، ما را به مقصد فایل delete.php می فرستد، البته پارامتر delete_brand را که با مقدار id برند، مقدار دهی شده است، نیز فرستاده می شود.

هنگامی که ما بر روی ویرایش برند کلیک می کنیم چه اتفاقی می افتد؟

همانطور که در پارگرافهای قبلی به طور کامل توضیح دادم ، با کلیک بر روی ویرایش برند ما به فایل index.php فرستاده می شویم. دقت کنید که فایل index.php برای پذیرش لینک ویرایش، هنوز آماده نشده است، بنابراین باید ابتدا به آدرس C:\wamp\www\ecommerce\admin_area برویم و فایل index.php را با استفاده از Notepad++ باز کنیم و کدهای زیر را در آن پیدا کنیم.

			if(isset($_GET['view_brands']))
			{
				include('view_brands.php');
			}

آنها را حذف کنیم و به جای آنها کدهای زیر را قرار دهیم.

			if(isset($_GET['view_brands']))
			{
				include('view_brands.php');
			}
			
			if(isset($_GET['edit_brand']))
			{
				include('edit_brand.php');
			}

در کدهای بالا، سعی کردیم مسیر برنامه را به سمت فایل edit_brand.php تغییر دهیم تا در آنجا با دقت کامل به ویرایش برند بپردازیم؛ اما همانطور که می دانید ما این فایل را نداریم، بنابراین به آدرس C:\wamp\www\ecommerce\admin_area باز می گردیم و مانند تصویر زیر این فایل را در آنجا ایجاد می کنیم.

ایجاد فایل edit_brand

حالا باید فایل edit_brand.php را باز کنید و کدهای زیر را درون آن قرار دهید.

<?php
	$brand_id=$_GET['edit_brand'];
	$select_brand="select * from brands where brand_id='$brand_id' ";
	$run_brand=mysqli_query($con,"SET NAMES SET utf8");
	$run_brand=mysqli_query($con,"SET CHARACTER SET utf8");
	$run_brand=mysqli_query($con,$select_brand);
	$row_brand=mysqli_fetch_array($run_brand);
	$title_brand=$row_brand['brand_title'];
?>
<form method="post" action="" >
	<table  width="650" align="center" style="border: none;" >
		<caption style="border: none;" ><b>برند مورد نظرتان را ویرایش نمایید.</b></caption >
		<tr style="border: none;">
			<td style="border: none;"><b>نام برند :</b></td >
			<td style="border: none;"><input type="text" name="update_brand" size="40" placeholder="<?php echo $title_brand  ?>" ></td >
			<td style="border: none;"><input type="submit" name="update_old_brand" value="برند ویرایش شود."/></td >
		</tr>
	</table>
</form>
<?php
	if(isset($_POST['update_old_brand'])){
		$update_old_brand=$_POST['update_brand'];
		$update_brand="update brands set brand_title=N'$update_old_brand' where brand_id='$brand_id'";
		$run_update_brand = mysqli_query($con,$update_brand);
		if($run_update_brand)
		{
			echo "<script>alert('برند شما به درستی به روز رسانی شد.')</script>";
			echo "<script>window.open('index.php?view_brands','_self')</script>";
		}
	}
?>

حاصل کدهای بالا تصویر زیر است.

حلصل کدهای ویرایش برند

با دقت در تصویر بالا، احتمالا درک کدهای edit_brand.php آسان تر می شود. ابتدا با استفاده از مقدار متغییر $_GET['edit_brand'] توانستیم، id برند را به دست آوریم؛ سپس با استفاده از همین id، برند مورد نظر را برای ویرایش از پایگاه داده استخراج کرده ایم (دقت کنید تنها چیزی که ما قادریم از برند ویرایش نماییم، نام برند است).

در ادامه با استفاده از یک فرم ساده، اگر مدیر سایت قصد تغییر در نام را دارد، با نوشتن نام جدید در تگ ورودی و سپس فشار دادن بر روی دکمه  " برند ویرایش شود" باعث می شود که کدهای ما به راحتی این نام جدید را دریافت کنند و با استفاده از دستور update، نام برند مورد نظر را تغییر دهند.

هنگامی که ما بر روی حذف برند کلیک می کنیم چه اتفاقی می افتد؟

با کلیک بر روی لینک حذف یک برند خاص، با توجه به توضیحات قبلی که خدمت شما عزیزان دادم؛ ما به فایل delete_brand.php فرستاده می شویم، اما ما این فایل را نساخته ایم. بنابراین به آدرس C:\wamp\www\ecommerce\admin_area بروید و فایل delete_brand.php را مانند تصویر زیر ایجاد کنید.

ایجاد فایل delete_brand

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

<html lang="fa"  dir="rtl">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<?php
    include("include/db.php");
	if(isset($_GET['delete_brand'])){
		$delete_id_brand=$_GET['delete_brand'];
		$delete_brand="delete from brands where brand_id='$delete_id_brand' ";
		$run_delete_brand=mysqli_query($con,$delete_brand);
		if($run_delete_brand)
		{
			echo "<script>alert('این برند با موفقیت از میان برندهای شما حذف شد.')</script>";
			echo "<script>window.open('index.php?view_brands','_self')</script>";
		}
	}
?>	
</body>
</html>

طبق آنچه که شما در کدهای بالا ملاحظه می نمایید، من در ابتدا با استفاده از متغییر سراسری $_GET['delete_brand'] به id محصولی که قرار است حذف شود، دسترسی پیدا کرده ام، و در ادامه با استفاده از یک دستور delete از سری دستورات SQL ، برند مورد نظر را از میان برندهای خودمان حذف کرده ام و در انتهای کار نیز با دادن یک پیام موفقیت این عملیات، مدیر را از حذف برند مورد نظر آگاه ساخته ام.

حالا وقت تست عملی کدهای نوشته شده، فرا رسیده است.

تست عملی کدهای نوشته شده

اولین کاری که شما باید انجام دهید این است که باید WAMP را روشن کنید و در مرورگر خودتان آدرس http://localhost/ecommerce/admin_area/index.php?view_cats را وارد نمایید. تا تصویر زیر برای شما به نمایش در بیاید.

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

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

برند خاص را می خواهم ویرایش کنم

حالا نام برند را تغییر می دهم (آن را از "برند جهانگیر پچکم" به برند "برند جهانگیر پچکم 2" تغییر می دهم) و بر روی کلید "برند ویرایش شود" کلیک می کنم. به تصویر زیر نگاه کنید.

نام برند مورد نظر را تغییر دادم

با فشار دادن دکمه "برند ویرایش شود"، تصویر زیر ایجاد می شود.

پیام تغییر برند

حالا برند مورد نظر من تغییر نام داد. حالا برویم سراغ حذف، برای اینکار از لیست برند های موجود بر روی لینک حذف هر کدام که فشار بدهیم، حذف به آسانی انجام می شود. به تصویر زیر نگاه کنید. من در تصویر زیر می خواهم "برند جهانگیر پچکم 2" را حذف کنم.

حذف یک برند خاص

با کلیک بر روی حذف، پیام زیر به نمایش در می آید و برند مورد نظر از میان برندها حذف می شود.

پیام حذف برند مورد نظر

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

فایل های نهایی

فایل نهایی index.php که در آدرس C:\wamp\www\ecommerce\admin_area قرار دارد.

<!-- start of Header -->
<?php	include('include/Header.php');	?>
<!-- end of Header -->				

<div id="templatemo_content">
	
	
	<!-- start of ocntent left -->
	<div id="templatemo_content_left">
		
		<?php 
			
			if(isset($_GET['insert_pro']))
			{
				include('insert_product.php');
			}			
			
			if(isset($_GET['view_pro']))
			{
				include('view_product.php');
			}
			
			if(isset($_GET['edit_pro']))
			{
				include('edit_product.php');
			}			
			
			if(isset($_GET['insert_cat']))
			{
				include('insert_cat.php');
			}
			
			if(isset($_GET['view_cats']))
			{
				include('view_cats.php');
			}
			
			if(isset($_GET['edit_cat']))
			{
				include('edit_cat.php');
			}
			
			if(isset($_GET['insert_brand']))
			{
				include('insert_brand.php');
			}
			
			if(isset($_GET['view_brands']))
			{
				include('view_brands.php');
			}
			
			if(isset($_GET['edit_brand']))
			{
				include('edit_brand.php');
			}			
			

		?>
		
		<div class="cleaner_with_height">&nbsp;</div>
	</div> 
	<!-- end of ocntent left -->

<!-- start of right content -->
<?php	include('include/Right_Sidebar.php');	?>
<!-- end of right content -->

<div class="cleaner">&nbsp;</div>
</div>

<!-- start of footer -->
<?php include('include/Footer.php');	?>
<!-- end of footer -->

فایل نهایی edit_brand.php که در آدرس C:\wamp\www\ecommerce\admin_area قرار دارد.

<?php
	$brand_id=$_GET['edit_brand'];
	$select_brand="select * from brands where brand_id='$brand_id' ";
	$run_brand=mysqli_query($con,"SET NAMES SET utf8");
	$run_brand=mysqli_query($con,"SET CHARACTER SET utf8");
	$run_brand=mysqli_query($con,$select_brand);
	$row_brand=mysqli_fetch_array($run_brand);
	$title_brand=$row_brand['brand_title'];
?>
<form method="post" action="" >
	<table  width="650" align="center" style="border: none;" >
		<caption style="border: none;" >
			<b>برند مورد نظرتان را ویرایش نمایید.</b>
		</caption >
		<tr style="border: none;">
			<td style="border: none;">
				<b>نام برند :</b>
			</td >
			<td style="border: none;">
				<input type="text" name="update_brand" size="40" placeholder="<?php echo $title_brand  ?>" >
			</td >
			<td style="border: none;">
				<input type="submit" name="update_old_brand" value="برند ویرایش شود."/>
			</td >
		</tr>
	</table>
</form>
<?php
	if(isset($_POST['update_old_brand'])){
		$update_old_brand=$_POST['update_brand'];
		$update_brand="update brands set brand_title=N'$update_old_brand' where brand_id='$brand_id'";
		$run_update_brand = mysqli_query($con,$update_brand);
		if($run_update_brand)
		{
			echo "<script>alert('برند شما به درستی به روز رسانی شد.')</script>";
		echo "<script>window.open('index.php?view_brands','_self')</script>";
		}
		}
		?>				

فایل نهایی delete_brand.php که در آدرس C:\wamp\www\ecommerce\admin_area قرار دارد.

<html lang="fa"  dir="rtl">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<?php
    include("include/db.php");
	if(isset($_GET['delete_brand'])){
		$delete_id_brand=$_GET['delete_brand'];
		$delete_brand="delete from brands where brand_id='$delete_id_brand' ";
		$run_delete_brand=mysqli_query($con,$delete_brand);
		if($run_delete_brand)
		{
			echo "<script>alert('این برند با موفقیت از میان برندهای شما حذف شد.')</script>";
			echo "<script>window.open('index.php?view_brands','_self')</script>";
		}
	}
?>	
</body>
</html>
تمام فصل‌های سری ترتیبی که روکسو برای مطالعه‌ی دروس سری فروشگاه اینترنتی با PHP توصیه می‌کند:
نویسنده شوید

دیدگاه‌های شما

در این قسمت، به پرسش‌های تخصصی شما درباره‌ی محتوای مقاله پاسخ داده نمی‌شود. سوالات خود را اینجا بپرسید.