gpt4 book ai didi

php - 如何将 2 个字符串插入数据库中的 1 列? (代码点火器)

转载 作者:可可西里 更新时间:2023-11-01 01:11:10 28 4
gpt4 key购买 nike

我想在我的数据库中将 2 个字符串数据插入到 1 个列(组合)中。这是我的流程代码。

模型:

public function edit_code($input_id,$input_name, $input_code){
$data['name'] = $input_name;
$data['code'] = $input_code;
$this->db->where('id',$input_id);
$this->db->update('code',$data);

}

查看:

<div>  
<div>
<h2>Edit Code:</h2>
<div>
<?php echo form_open('login/edit_code');?>
<?php

$codeLAT= 'KUCK';

$input_name = array(
'name' => 'input_name',
'class' => 'forminput',
'size' => '30'
);

$input_code = array(
'name' => 'input_code',
'class' => 'forminput',
'size' => '30'
);

?>

<span>Name</span>: <?php echo form_input($input_name,$page['name']) ?><br/>
<span>Code</span>: <?php echo $codeLAT , form_input($input_code,$page['code']) ?>
<?php echo form_hidden('input_id',$page['id']);?>
<?php echo form_submit('submit', 'Submit', 'class=buttonss'); ?>
<?php echo form_close();?>
</div>

Controller :

public function save_edit_code(){

$this->check_logged_in();

$codeLAT = 'KUCK';

$input_id = $_POST['input_id'];

$input_name = $_POST['input_name'];

$input_code = ($_POST[$codeLAT]. '' .$_POST['input_code']);

$this->Promo_model->edit_promo($input_id,$input_name, $input_code);
redirect('login/codepage');
}

在这里我想结合$codeLAT$inputcode

Example :

Script : $input_code = ($_POST[$codeLAT]. '' .$_POST['input_code']);

Save in my database colomn code : KUCK009912

但在我的代码中,我的表单只是将 $inputcode 保存在我的 colomn database 中。不包括 $codeLAT

在我的示例中,只需保存 009912

最佳答案

我认为这里忽略了一个明显的问题。

将由您的 View 生成的表单类似于下面的 HTML。

<form action="http://localhost/index.php/login/edit_code" method="post" accept-charset="utf-8">

<span>Name</span>: <input type="text" name="input_name" value="" class="forminput" size="30">
<br>
<span>Code</span>: KUCK<input type="text" name="input_code" value="" class="forminput" size="30">

<input type="hidden" name="input_id" value="">
<input type="submit" name="submit" value="Submit" class="buttonss">
</form>

如您所见,$codeLAT 不是表单输入,因此不会在表单提交时发送到服务器。

$_POST 是一个数组,它只包含通过 HTTP POST 方法传递给服务器的变量,发生在表单提交时。由于 $codeLAT 不是生成的 HTML 表单中的输入,变量永远不会添加到 $_POST 数组中。

这就是 $_POST[$codeLAT] 不检索任何值的原因。其次,如果 $_POST 数组中有一个名为 codeLAT 的变量,那么您可以使用 $_POST['codeLAT'] 访问它。

要使用 $_POST['codeLAT'],您可以使用以下 CodeIgniter 函数将其作为隐藏输入包含在表单中。

form_hidden('codeLAT', 'KUCK');

codeLAT 变量随后将包含在 POST 方法中并作为结果添加到 $_POST 数组中,但不会是用户可见的输入。

如果您不想将其添加为隐藏输入,那么您可以访问变量 $codeLAT,正如在您的 Controller 中声明的那样。

$input_code = $codeLAT. '' .$_POST['input_code'];

我建议您看一下 CodeIgniter Form Helper documentation其中解释了 form_hidden 函数的使用。

我还建议您看一下 PHP Form Handling at W3 Schools$_POST variable 的解释.

关于php - 如何将 2 个字符串插入数据库中的 1 列? (代码点火器),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57953593/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com