Php WordPress选项正在保存错误的输入
我正在尝试将WordPress设置保存到数据库中。我使用下面的代码来做这件事。问题是无论我给它什么输入,它只在数据库中保存“p”Php WordPress选项正在保存错误的输入,php,wordpress,Php,Wordpress,我正在尝试将WordPress设置保存到数据库中。我使用下面的代码来做这件事。问题是无论我给它什么输入,它只在数据库中保存“p” // Display the admin options page function options_page_fn() { ?> <div class="wrap"> <div class="icon32" id="icon-options-general"><br></div>
// Display the admin options page
function options_page_fn() {
?>
<div class="wrap">
<div class="icon32" id="icon-options-general"><br></div>
<h2>Settings</h2>
Here you can update the details of your options.
<form action="" method="post" name="options">
<?php settings_fields('plugin_options'); ?>
<?php do_settings_sections(__FILE__); ?>
<?php $opt_api = plugin_options['api_key']; ?>
<?php $opt_loc = plugin_options['loc_id']; ?>
<?php $opt_app = plugin_options['app_id']; ?>
<?php $opt_ulr = plugin_options['url']; ?>
<?php wp_nonce_field( 'options_save', 'options_save_nonce' ); ?>
<p class="submit">
<input name="submit" id="submit" type="submit" class="button-primary" value="<?php esc_attr_e('Save Changes'); ?>" />
</p>
</form>
</div>
<?php
if ( isset( $_POST['submit'] ) && ( $opt_api ) ) {
if ( isset( $_REQUEST[ 'options_save_nonce' ] ) && wp_verify_nonce( $_REQUEST[ 'options_save_nonce' ], 'options_save' ) ) {
$arr = array("api_key"=> $opt_api, "loc_id" => $opt_loc, "app_id" => $opt_app, "url" => $opt_ulr);
update_option('plugin_options', $arr);
echo "Updated" . $opt_api;
}else{
echo "Update Failed";
}
}
else {
echo "No API KEY";
}
}
//显示管理选项页面
功能选项\u页面\u fn(){
?>
设置
您可以在此处更新选项的详细信息。
当您检查元素时,页面上是否有任何由设置\字段(“插件\选项”)调用的隐藏字段要保存?没有隐藏字段,但我认为这是因为变量plugin options
的第一个字母。除此之外,还有任何方法可以验证表单的nonce,哪些操作用于options。php
出于好奇,plugin\u options
是定义的常量吗?它不包含前导的$
,即$plugin\u options
。此外,$munch_opt_api
似乎根本没有定义,因此它似乎应该总是写无api键
。似乎有点奇怪,这应该是一个按钮而不是一个段落,还是可能作为一个div?