【问题标题】:CodeIgniter passing dynamic data from controller to viewCodeIgniter 将动态数据从控制器传递到视图
【发布时间】:2010-07-03 18:29:04
【问题描述】:

我正在将一个数组从控制器传递给视图。简单的东西。应该可以,但是行为太奇怪了,我无法找出错误。

这是控制器-

$link = "http://" . $server . ".something.com/uploads/" . $name;
$data = array(
    'name' =>$name,
    'server'=>$server,
    'link'=>$link,
    'username'=>$username
    );
$this->load->view('photo_edit', $data); //sending $data to view

这是视图 -

<img src = "<?php echo $link; ?>"/>

当视图加载时,$link 就是这个 - http://.something.com/uploads/ 但是当我在控制器中回显 $link 时,它完全没问题($server$name 都正确显示)。传递$link 存在一些问题。

【问题讨论】:

  • 您是否正在做任何输入验证以确保server 不为空?
  • 提供的代码应该可以工作,所以很明显问题出在您发布的代码之外。
  • print $link; 在控制器内部有什么作用?变量设置是否正确?

标签: php codeigniter


【解决方案1】:

您需要将 $link 添加到您的 $data 数组中,以便视图可以看到它。

改为这样做: $data['link'] = "http://" 。 $服务器。 “.something.com/uploads/”。 $name;

【讨论】:

  • 我已经将 $link 添加到 $data 数组,如上面的代码所示。虽然我尝试了你的方法,但它仍然不起作用。 $server 和 $name 的来源有什么问题吗?它们是我从 $this->input->post('server'); 收到的值。和 $this->input->post('name');仍然不确定是什么错误。
【解决方案2】:

您肯定需要仔细检查这些后变量的传入值。确保您的表单也正确传递它们。

【讨论】:

  • 这应该作为评论添加到您的原始答案下方:)。
【解决方案3】:

问题出在其他地方,代码是正确的。 检查$server$name 是否为空。

【讨论】:

    猜你喜欢
    • 2011-09-09
    • 1970-01-01
    • 2016-05-30
    • 1970-01-01
    • 1970-01-01
    • 2014-12-29
    • 1970-01-01
    相关资源
    最近更新 更多