Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/250.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
Php CI下拉选择_Php_Codeigniter - Fatal编程技术网

Php CI下拉选择

Php CI下拉选择,php,codeigniter,Php,Codeigniter,任何人都知道为什么用下面的代码我会收到这个错误消息。我试图让它显示我数组中的数据,因为每个选项都有一个用户id值,选项的文本将是它们的名称。到目前为止,它只显示最后一个人 遇到一个PHP错误 严重性:警告 消息:isset中的偏移量类型非法或为空 文件名:helpers/form_helper.php 电话号码:319 乌德帕特: <?php echo form_label('Recipient', 'recipient'); ?> <?php $data = arr

任何人都知道为什么用下面的代码我会收到这个错误消息。我试图让它显示我数组中的数据,因为每个选项都有一个用户id值,选项的文本将是它们的名称。到目前为止,它只显示最后一个人

遇到一个PHP错误

严重性:警告

消息:isset中的偏移量类型非法或为空

文件名:helpers/form_helper.php

电话号码:319


乌德帕特:

<?php echo form_label('Recipient', 'recipient'); ?>

<?php 

$data = array(
    'name'   => 'to',
    'class'  => 'required'
);

$options = array();

foreach($users AS $user)
{
    $options[] = array (
        $user->user_id => $user->first_name.' '.$user->last_name
    );

    $options[] = $user; 
}   
?>

<?php echo form_dropdown($data, $options); ?>

还有其他想法吗?

来自文档:

第一个参数将包含字段的名称,第二个参数将包含选项的关联数组,第三个参数将包含希望选择的值

您正在传递一个关联数组,它需要一个字符串。

来自文档:

第一个参数将包含字段的名称,第二个参数将包含选项的关联数组,第三个参数将包含希望选择的值


您正在传递一个关联数组,它需要一个字符串。

删除行
$options[]=$user来自您的
foreach
form_下拉列表
需要一个以值为键、以文本为值的数组

编辑:
$options
需要是1D数组(不是2D数组)

编辑2:

$options = array(-1 => 'Select an option'); // Start with a "default option"

foreach($users AS $user)
{
    $options[$user->user_id] = $user->first_name.' '.$user->last_name;
}

form_dropdown('to', $options, -1, 'class="required"'); // Make the default "selected"

删除行
$options[]=$user来自您的
foreach
form_下拉列表
需要一个以值为键、以文本为值的数组

编辑:
$options
需要是1D数组(不是2D数组)

编辑2:

$options = array(-1 => 'Select an option'); // Start with a "default option"

foreach($users AS $user)
{
    $options[$user->user_id] = $user->first_name.' '.$user->last_name;
}

form_dropdown('to', $options, -1, 'class="required"'); // Make the default "selected"


注意:您显示的
$options
数组每次通过循环都会重新实例化。这意味着当您尝试调用
窗体下拉列表时,它将只包含
$user
中最后一个
$user
。@rjz那么我该如何解决这个问题。第319行的代码在哪里?@user1244239在黑暗中拍摄,但是
窗体下拉列表()
可能需要一个选项数组。因此,您希望附加到
$options
,而不是替换它。尝试将
$options[]=array(…')
声明
$options=array()
在您的
foreach
外部,并使用
$options[]将每个
$user
附加到循环内部=$user
。注意:您显示的
$options
数组每次都会通过循环重新实例化。这意味着当您尝试调用
表单下拉列表时,它将只包含
$users
中最后一个
$user
。@rjz那么如何解决这个问题。第319行的代码在哪里?@user1244239 Shot in黑暗但
form_dropdown()
可能需要一个选项数组。因此您希望附加到
$options
,而不是替换它。尝试
$options[]=array(…'
foreach
外部声明
$options=array()
并使用
$options[]将每个
$user
附加到循环内部=$user
。唯一的问题是。注意,它在不是用户id的名称旁边显示了0和1,但当我发布表单时,它显示了正确的用户_id@user1244239:嗯?有什么问题吗?你说的0和1在哪里?单击“撰写新邮件”中的下拉列表,注意它如何为每个用户显示0和1不过,还有最后一个问题。我是否可以将类作为第三个参数应用于表单下拉列表,以便使其成为必需的参数。@user1244239:这将是第四个参数。
form_下拉列表('to',$options','class=“required”'))
唯一的问题是。注意,它在不是用户id的名称旁边显示了0和1,但当我发布表单时,它显示了正确的用户_id@user1244239:嗯?有什么问题吗?你说的0和1在哪里?单击“撰写新邮件”中的下拉列表,注意它如何为每个用户显示0和1最后一个问题。我是否可以将一个类作为第三个参数应用于表单下拉列表,以便使其成为必需的参数。@user1244239:这将是第四个参数。
form_下拉列表('to',$options','class=“required”;
$options = array(-1 => 'Select an option'); // Start with a "default option"

foreach($users AS $user)
{
    $options[$user->user_id] = $user->first_name.' '.$user->last_name;
}

form_dropdown('to', $options, -1, 'class="required"'); // Make the default "selected"