keyboard_return  چسبون مقالات آموزشی آموزش نحوه ذخیره کردن مقادیر CheckBox در دیتابیس
  1. آموزش نحوه ذخیره کردن مقادیر CheckBox در دیتابیس

چطور مقادیر چک باکس را داخل دیتابیس mysql ذخیره کنیم

با سلام خدمت شما دوستان عزیز. در این آموزش قصد داریم در مورد نحوه ذخیره کردن مقادیر CheckBox در دیتابیس mysql صحبت کنیم. با ما همراه باشید:

یک دیتابیس با نام دلخواه خود بسازید. در این مثال ما از نام db_chasboon استفاده کردیم. یک جدول (table) نیز با نام دلخواه خود بسازید. در این مثال ما از نام fav_tbl استفاده کردیم.

در این مثال جدول ما شامل دو فیلد Id و favorite می باشد.

حال یک فایل با نام config.php ایجاد کرده و کد زیر را در آن کپی کنید:

<?php 
$server = "localhost";
$username = "root";
$password = "";
$database = "chasboon";

$conn = mysql_connect($server, $username, $password);
if(!$conn) {
	die("Connection error. Plaese check your hostname, username or password.");
}
if (!mysql_select_db($database)) {
	die("Database $database not found.");
}

 ?>

 

حال یک فایل با نام index.html بسازید و کد های زیر را در آن کپی کنید.

<!DOCTYPE html>
<html>
<head>
	<title>Chasboon.ir- Save Checkbox to DB</title>
	<meta charset="utf-8">
	<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<div id="container">
	<div id="form">
		<form action="process.php" method="POST">
			<fieldset>
				<legend>What is your favorite language?</legend>
				<input type="checkbox" name="chk[]" value="csharp">C# <br>
				<input type="checkbox" name="chk[]" value="php">PHP <br>
				<input type="checkbox" name="chk[]" value="java">Java <br>
				<input type="checkbox" name="chk[]" value="other">Other <br>
				<input type="submit" name="submit" value="Submit">
			</fieldset>
		</form>
	</div>
</div>
</body>
</html>

همانطور که مشاهده می کنید خاصیت اکشن فرم با مقدار process.php ست شده است. هنگامی که کاربر روی دکمه submit کلیک کند اطلاعات موجود در فرم به صفحه process.php ارسال خواهد شد. همچنین به منظور دسترسی به مقادیر checkbox از یک آرایه با نام chk کمک گرفتیم این نام اختیاری می باشد و شما می توانید نام دلخواه خود را برای آن انتخاب نمایید.

HTML5-Form

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

<?php 
include_once("config.php");
$data = "";

	if (isset($_POST['chk'])) {
		
	
	$checkBox = $_POST['chk'];
	for ($i=0; $i < sizeof($checkBox); $i++) { 
		$data .= $checkBox[$i];
		if ($i < sizeof($checkBox) - 1) {
			$data .= ", ";
		}
	}
	
	mysql_query("INSERT INTO fav_tbl (favorite) VALUES ('$data')") or die(mysql_error());
	echo "1 row inserted.";
 }
 else {
 	die("Please select a checkbox");
 }
 	

 

خط اول این قطعه کد، فایلی با نام config.php را به این صفحه الحاق می کند. این فایل شامل تنظیمات مورد نظر برای اتصال به بانک اطلاعاتی می باشد. که در ابتدای آموزش آن را ایجاد کردید.

به منظور جلوگیری از اضافه شدن رکورد خالی در دیتابیس، با استفاده از تابع isset مشخص می کنیم آیا کاربر گزینه ای را انتخاب کرده است یا خیر! در ادامه مقادیر checkbox های انتخاب شده توسط کاربر که در آرایه ای به نام chk ذخیره شده بود را با استفاده از متغیر سراسری POST_$ گرفته و در متغیری با نام checkbox$ ذخیره می کنیم تا تغییرات احتمالی مورد نظر را روی این متغیر اعمال کنیم.

در این آموزش قصد داریم تمام گزینه های انتخاب شده درون یک فیلد در دیتابیس (فیلد favorite) ذخیره شوند به همین منظور با استفاده از یک حلقه تکرار مقادیر انتخاب شده توسط کاربر را با هم ادغام کرده و بین آن ها یک علامت "," نیز قرار دادیم. به عنوان مثال نتیجه کار به شکل زیر خواهد شد:

"Java, PHP, C#"

حال می توانید رشته مذکور را در دیتابیس ذخیره کنید.

نهایتا با استفاده از تابع ()mysql_query می توانید پرس و جوی مورد نظر خود را بر روی جدول انتخاب شده اعمال کنید. جهت ذخیره داده ها در جدول از دستور INSERT INTO استفاده می شود. در صورتیکه داده ها با موفقیت در جدول ذخیره شوند پیغام "One row inserted"  نمایش داده خواهد شد و در صورت بروز خطا، تابع ()mysql_error پیغام مربوط به خطا را نمایش خواهد داد.

به پایان این آموزش رسیدیم. امیدوارم این آموزش برایتان مفید باشد. نظرات و پیشنهادات خود را از طریق دیدگاه با ما در میان بگذارید.

آموزش نحوه ذخیره کردن مقادیر CheckBox در دیتابیس - 4.2 از 5 بر اساس 150 رای

امتیاز کاربران

آموزش نحوه ذخیره کردن مقادیر CheckBox در دیتابیس
دیدگاه‌ها
sevil sevil 6 سال پیش
سلام و خسته نباشید ممنون از آموزش مفیدتان من یه فرم دارم که که حضور و غیاب رو انجام میده.جلوی هر اسمی سه تا چک باکس گذاشته شده که باید یکی ازین سه تا انتخاب بشه و بر اساس انتخاب چک باکسی که انتخاب شده مقدارش در دیتابیس ذخیره میشه.اگر تعداد یک نفر باشه میتونم انجام بدم ولی چون داخل حقله گذاشته شده و این چک باکس ها بر اساس تعداد افراد ایجاد میشه موقع ارسال به دیتابیس مقدار آخرین چک باکس فرستاده میشه با چه دستوری میتونم مقادیر همه چک باکس های انتخاب شده را به دیتابیس بفرستم ممنون میشم اگر راهنماییم کنید.
آرمان بابائی آرمان بابائی 6 سال پیش
درود دوست عزیز. این سوال رو در قسمت پرسش و پاسخ سایت مطرح کنید. chasboon.ir/discuss

2024 © Copyright کليه حقوق مادی و معنوی براي چسبون محفوظ است و هرگونه کپی برداری پیگرد قانونی دارد.