اطلاعات ذخیره نمی شوند!!!

پرسیده شده
فعالیت 983 روز پیش
دیده شده 323 بار
0

باسلام و احترام

 

من میخ واهم یک افزونه که کاربر در سمت تنظیمات آن رنگی را انتخاب می کند و اطلاعات را ذخیره می کند طراحی کنم.

هنگامی که از اینپوت color استفاده می کنم و مراحل آموزش را کامل انجام می دهم و روی دکمه ذخیره سازی تغییرات می زنم اطلاعات ریست می شود!!!!!!!

اما وقتی var_dump می گیرم می بینم اطلاعات ذخیره شده اما با ریلود کردن صفحه اطلاعات می پره

من اینو چجوری درستش کنم؟؟؟

 

اینا کدامن:

(فایل اصلی افزونه:)

<?php
/*
	Plugin Name: افزونه تستی
	Plugin URI: https://sarzamin-site.ir
	Description: افزونه ای بسیار مفید و کاربردی
	Requires at least: WP 4.0.0
	Tested up to: WP 4.8.2
	Author: صالح عطاری
	Author URI: mailto:[email protected]
	Version: 1.0.0
*/
?>
<?php
define( 'SC_DIR', plugin_dir_path( __FILE__ ) );
define( 'SC_URL', plugin_dir_url( __FILE__ ) );

if(is_admin()){
    include SC_DIR ."admin.php";
}

?>

functions.php:

<?php

define('SCR_PATH' , get_template_directory() . DIRECTORY_SEPARATOR);
if(is_admin()){
    include SCR_PATH.'admin.php';
}

admin.php:

<?php

function scroll_color_setting() {
	add_menu_page(
		'رنگ اسکرول بار',
		'رنگ اسکرول بار',
		'manage_options',
		'scroll-color',
		'scroll_color_settings'
	);
}
function scroll_color_settings(){

	include "settings.php";

	$sc_options = get_option( 'sc_options');
	

	if ( isset( $_POST['scsavedata'] ) ) {

		$sc_options['sc_color'] = isset($_POST['sc_color']);

		update_option('sc_options' , $sc_options);
	};
}

add_action( 'admin_menu', 'scroll_color_setting' );

settings.php:

<div class="wrap">
    <h1>تنظیمات افزونه</h1>

<form method="post">
    <table class="form-table">

        <tr valign="top">
            <th scope="row">رنگ اسکرول بار</th>
            <td>
            <input type="color" name="sc_color" <?php echo $sc_options['sc_color'] ? 'checked':''; ?> />
            </td>
        </tr>
        <tr valign="top">
            <th scope="row"></th>
            <td>
            <input type="submit" class="button" name="scsavedata" value="ذخیره سازی"/>
            </td>
        </tr>
    </table>
</form>
</div>

 

لطفا راهنمایی کنید که مشکل از کجا است ، کلی آزمایش کردم و دیدم که مشکل از فایل settings.php است ، نکته مهم اینجا است که چگونه اطلاعات اینپوت color را کاری کنم که نپرند؟؟؟

فایل پیوست

صالح عطاری
صالح عطاری

27 مرداد 00

-1
حذف شده

سلام خدمت شما

به صورت زیر عمل کنید:




	$sc_options = get_option( 'sc_options');
	

	if ( isset( $_POST['scsavedata'] ) ) {

		$sc_options['sc_color'] = isset($_POST['sc_color']);

		update_option('sc_options' , $sc_options);
		include "settings.php";// مسیر این را هم چک کنید که به درستی فراخوانی شده باشد
	};

 

فایل پیوست

رضا بیرجندی(محب)

توسط

رضا بیرجندی(محب)

28 مرداد 00

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

3 شهریور 00

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

3 شهریور 00