Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
HTML/Php表单-如何将可选的、未选择的下拉列表保存为null/empty而不是选项?_Php_Forms_Drop Down Menu_Drupal 6_Drupal Ctools - Fatal编程技术网

HTML/Php表单-如何将可选的、未选择的下拉列表保存为null/empty而不是选项?

HTML/Php表单-如何将可选的、未选择的下拉列表保存为null/empty而不是选项?,php,forms,drop-down-menu,drupal-6,drupal-ctools,Php,Forms,Drop Down Menu,Drupal 6,Drupal Ctools,我正在通过cTools向导(主要是php)为Drupal6构建表单,我有几个可选的选择框。我的选项设置如下: 0 |选择 1 |选项1 2 |方案2 3 |方案3 4 |选项4 或者在某些情况下,如年份或州选择,我使用array_unshift将选择附加到动态构建或从其他地方引用的列表的前面 当没有用户输入时,这些选择框返回select、0或-1的值,而我希望它们什么也不返回 我对PHP非常陌生,所以我可能没有以正确的方式问这个问题,因为我还没有发现任何关于它应该是一个相当普遍的问题的东西。有人

我正在通过cTools向导(主要是php)为Drupal6构建表单,我有几个可选的选择框。我的选项设置如下:

0 |选择

1 |选项1

2 |方案2

3 |方案3

4 |选项4

或者在某些情况下,如年份或州选择,我使用array_unshift将选择附加到动态构建或从其他地方引用的列表的前面

当没有用户输入时,这些选择框返回select、0或-1的值,而我希望它们什么也不返回


我对PHP非常陌生,所以我可能没有以正确的方式问这个问题,因为我还没有发现任何关于它应该是一个相当普遍的问题的东西。有人知道如何解决这个问题,或者如何更好地表达我的问题以找到答案吗?谢谢

由于该字段已过账,因此在$\u POST中您将始终收到某种类型的字符串值。我通常提供一个空值Select,它在PHP端给我一个空字符串。如果您不介意使用0->false,那么您可以执行以下操作

<?php if(!$_POST['field']) $_POST['field'] = null; ?>

将我的代码设置为:$form['myfield1']=array'type'=>'select','title'=>t'State','options'=>content\u allowed\u values$fields['myfield1'],'default\u value'=>$myformname->myfield1',required'=>FALSE;如果$myformname->myfield1$myformname->myfield1=NULL;我的条件和我尝试过的各种排列根本不会影响输出,所以我不确定我的编码是否有错误,或者与ctools工具解释或存储表单变量的方式有什么根本区别。我认为您发布的最后一行应该在第一行之上。将其值复制为默认值后,您当前正在使其无效。