标签: codeigniter

如何在编辑时隐藏字段,在添加项目时可见?

我在编辑添加条目时必须可见的条目时尝试隐藏字段时遇到问题.

我的表结构如下:

equip_items
--------------
id (pk)
equip_type_id (fk to equip_types)
site_id (fk to sites)
equip_status_id (fk to equip_status)
name
Run Code Online (Sandbox Code Playgroud)

(equip_type_id,site_id,name)是db中的复合唯一键约束.我在name字段上实现了一个回调,它处理了unique_CRUD对唯一约束的验证 - 考虑编辑现有或添加新的equip_items.

function unique_equip_item_check($str, $edited_equip_item_id){
$var = $this->Equip_Item_model->is_unique_except($edited_equip_item_id,$this->input->post('site_id'),$this->input->post('equip_type_id'),$this->input->post('name'));

if ($var == FALSE) {
$s = 'You already have an equipment item of this type with this name.';
$this->form_validation->set_message('unique_equip_item_check', $s);
return FALSE;
} else {
return TRUE;
}
}
Run Code Online (Sandbox Code Playgroud)

我将site_id和equip_type_id设置为隐藏字段,因为我不希望用户更改这些 - 没问题.

$crud->field_type('site_id', 'hidden', $site_id);
$crud->field_type('equip_status_id', 'hidden', iQS_EqStatus_InUse);
Run Code Online (Sandbox Code Playgroud)

当用户添加equip_item时,我希望他们能够从类型列表中选择equip_type - 没问题,这是默认的grocery_CRUD行为.

$crud->add_fields('equip_status_id', 'site_id', 'equip_type_id', 'name');
Run Code Online (Sandbox Code Playgroud)

当用户编辑equip_item时,我不希望用户能够编辑equip_type.我认为没问题我可以设置edit_fields以排除equip_type_id:

$crud->edit_fields('equip_status_id', 'site_id', 'name', 'barcode_no');
Run Code Online (Sandbox Code Playgroud)

但是这会对我的验证回调造成严重破坏,因为equip_type_id字段的值在编辑表单上没有,我的验证例程显然需要它. …

codeigniter hidden-field grocery-crud

1
推荐指数
1
解决办法
6984
查看次数

Codeigniter数组到字符串转换错误

我在使用update_batch发布时收到此错误.我已经看到了其他帖子,但我的行引用是DB_active_rec.php文件,其他人在他们的MC中看到它.该错误不会阻止update_batch发布,它会返回每个$ rb_items的错误. 在此输入图像描述

控制器:

  public function update_rb(){

    $rb_items = array();
        $rb_id=$this->input->post('id', TRUE);
        $rb_brand=$this->input->post('brand', TRUE);
        $rb_tasted=$this->input->post('tasted', TRUE);
        $rb_rating=$this->input->post('rating', TRUE);
        $rb_comment=$this->input->post('comment', TRUE);

        $i=0;
        foreach($rb_id as $id){
            $rb_items[$i] = array(
                'id'=>$id,
                'brand'=>$rb_brand[$i],
                'rating'=>$rb_rating[$i],
                'comment'=>$rb_comment[$i]
                );
                if(empty($rb_tasted)){
                    $rb_items[$i]['tasted']=0;
                } else if
                (in_array($id,$rb_tasted)){
                $rb_items[$i]['tasted']=1;
                } else{
                    $rb_items[$i]['tasted']=0;
                }                   
            $i++;
        }
        $this->model->update_rb($rb_items);
    }
Run Code Online (Sandbox Code Playgroud)

模型:

    public function update_rb($rb_items){
        $this->rb_db->update_batch('rb_selection',$rb_items,'id');
    }
Run Code Online (Sandbox Code Playgroud)

视图:

    <tr>
        <input type="hidden" name="id[]" value="<?php echo $row['id'];?>">
        <input type="hidden" name="brand[]" value="<?php echo $row['brand'];?>">
        <td><?php echo "<p>".$row['brand']."</p>";?></td>
        <td><input type="checkbox" <?php if($row['tasted'] == 1){echo "checked = checked";}?> name="tasted[]" value="<?php …
Run Code Online (Sandbox Code Playgroud)

php codeigniter

1
推荐指数
1
解决办法
1万
查看次数

没有赋值给变量的PHP类的实例化

我在Codeigniter HMVC扩展(通过Wiredesignz)中得到了这行代码,其中一个类被实例化而没有被赋值给变量(Base.php中的类CI)

代码 :

class CI extends CI_Controller
{
  public static $APP;

  public function __construct() {

    /* assign the application instance */
    self::$APP = $this;

    global $LANG, $CFG;

    /* re-assign language and config for modules */
    if ( ! is_a($LANG, 'MX_Lang')) $LANG = new MX_Lang;
    if ( ! is_a($CFG, 'MX_Config')) $CFG = new MX_Config;

    parent::__construct();
  }
}

/* create the application object */
new CI;
Run Code Online (Sandbox Code Playgroud)

这项技术的名称是什么?这意味着什么?

php codeigniter

1
推荐指数
1
解决办法
531
查看次数

为什么这个查询在Mysql中不起作用?

**我的英语不好,很抱歉.

我试图通过下面的查询获得两个日期的记录,但它返回一个空结果.

SELECT * FROM orders WHERE 
DATE(dateadd) = '2012-06-03' and DATE(dateadd) = '2012-06-04'
Run Code Online (Sandbox Code Playgroud)

更新:

dateadd是我的datetime列,默认为:0000-00-00 00:00:00

我使用DATE只获取日期(不包括时间).我希望在特定日期获取记录,而不是在两者之间.

谁能帮助我?

php mysql codeigniter

1
推荐指数
1
解决办法
101
查看次数

在CI中获取数据库列作为字符串

group     number
-------  -------------
grp1    01714586236
grp2    01924586236
grp1    01682659834
grp1    018823453468
grp2    01985345098
Run Code Online (Sandbox Code Playgroud)

我想列的所有号码number,其中group="GRP1"作为

(01714586236,01682659834,018823453468,......)
Run Code Online (Sandbox Code Playgroud)

在代码点火器中,plz通过发布所有控制器,模型和视图来分享答案

mysql sql codeigniter

1
推荐指数
1
解决办法
52
查看次数

使用JavaScript和html进行表单验证

我想验证我的表单.我在我的代码点火器视图中有一个表单验证javascript代码,但它无法正常工作,仍然在没有任何验证的情况下将值发送到下一页.你能告诉我我在哪里弄错了,为什么会这样?

码:

<form method="get" action="/calculator/stage_two" name="calculate" id="calculate" onsubmit="return validateForm();">
    <div class="calc_instruction">
        <input type="text" name="property_number" placeholder="No/Name" id = "property_number" class="stage_one_box" />
        <input type="text"  name="postcode" placeholder="Postcode" id = "postcode" class="stage_one_box" />
    </div>
    <input type = "image" name = "submit_calculator" id = "submit_calculator" value="Go" src = "/images/next_button.png" />
</form>
Run Code Online (Sandbox Code Playgroud)

Javascript功能:

<script type="text/javascript">
    function validateForm() {
        var postcode=document.forms["calculate"]["postcode"].value;
        if (postcode==null || postcode=="") {
            alert("Please enter the postcode to give you more accurate results");
            document.forms["calculate"]["postcode"].focus();
            return false;
        }
</script>
Run Code Online (Sandbox Code Playgroud)

html javascript php codeigniter

1
推荐指数
1
解决办法
607
查看次数

PHP星期几数字到星期几文本不是英语

我试图setlocale()在Windows 上使用函数来转换其他语言的天名,但它不起作用.

<?php setlocale(LC_ALL, 'nl_NL'); 
echo date("l", strtotime($variable); ?>
Run Code Online (Sandbox Code Playgroud)

有没有人可以选择setlocale()?我使用Codeigniter框架.

php codeigniter date setlocale

1
推荐指数
1
解决办法
1736
查看次数

与CodeIgniter的PHP邮件附件

我想从Codeigniter邮件类发送电子邮件,附件img和img在邮件正文中.

$this->email->from('office@office.com', 'Email');
$this->email->to('aaa@aaa.com');

$this->email->attach('pic.png');        

$this->email->set_mailtype("html");

$this->email->subject('Email');
$this->email->message('<img src="??????" />');  

$this->email->send();
Run Code Online (Sandbox Code Playgroud)

Img是附件,但不是邮件.有帮助吗?

php email codeigniter

1
推荐指数
1
解决办法
2524
查看次数

form_open()无法在codeigniter中工作

我想在CodeIgniter中构建一个简单的表单.我的视图'input_view.php'是:

 <html>
    <head>
        <link rel="stylesheet" type="text/css" href="<?php echo "$base/$css"?>">
    </head>
    <body>
        <div id="header">
            <?php $this->load->view('books_header'); ?>
        </div>

        <div id="menu">
            <?php $this->load->view('books_menu'); ?>
        </div>
        <?php //echo $title; ?>
        <?php echo form_open('books/input'); ?>

            <?php echo $title; ?>
            <?php echo form_input('title'); ?>;

            <?php echo $author; ?>
            <?php echo form_input('author'); ?>

            <?php echo $publisher; ?>
            <?php echo form_input('publisher'); ?>

            <?php echo $year; ?>
            <?php echo form_dropdown('year',$years); ?>

            <?php echo $available; ?>
            <?php echo form_checkbox('available','yes',TRUE); ?>

            <?php echo $summery; ?>
            <?php echo form_textarea('summery'); ?>

            <?php …
Run Code Online (Sandbox Code Playgroud)

php forms codeigniter

1
推荐指数
1
解决办法
2万
查看次数

通过ajax在代码点火器中提交表单

我想通过ajax提交表单,但我不知道为什么表单不通过ajax提交.为什么ajax没有选择提交ID ..这个代码只是像往常一样提交但不通过ajax帮助我在哪里我错了..

 echo form_open('Contact_Controller/submit');
 echo form_input('name', set_value('name'), 'id="name"');
 echo form_input('email', set_value('email'), 'id="email"');
 $data = array(
        'name'=> 'message',
        'id' => 'message',
        'cols'=> '35',
        'rows' => '12'

        );
 echo form_textarea($data, 'Message');
 echo form_submit('submit', 'Submit', 'id="submit"');
 ?>
Run Code Online (Sandbox Code Playgroud)

<script type = "text/javascript">
$('#submit').click(function(){

var form_data = {
        name: $('#name').val(),
        email: $('#email').val(),
        message: $('#message').val()
};

$.ajax({
    url: "<?php echo site_url('tuts_Contact_Controller/submit'); ?>",
    type: 'POST',
    data: form_data,
    success: function(msg) {
      alert(msg);
    }

});

</script>
Run Code Online (Sandbox Code Playgroud)

php ajax jquery codeigniter

1
推荐指数
1
解决办法
3311
查看次数

标签 统计

codeigniter ×10

php ×8

mysql ×2

ajax ×1

date ×1

email ×1

forms ×1

grocery-crud ×1

hidden-field ×1

html ×1

javascript ×1

jquery ×1

setlocale ×1

sql ×1