Php 使用CodeIgniter向数据库插入单引号或双引号
当我将数据加载到输入框中时:Php 使用CodeIgniter向数据库插入单引号或双引号,php,html,codeigniter,input,htmlspecialchars,Php,Html,Codeigniter,Input,Htmlspecialchars,当我将数据加载到输入框中时: <input type="text" name='name' value='<?= ($activity->name); ?>' class="form-control"> 为什么不在值上加双引号 <input type="text" name='name' value="<?=($activity->name); ?>" class="form-control"> 您可以同时使用这两种类型的报价。没有
<input type="text" name='name' value='<?= ($activity->name); ?>' class="form-control">
为什么不在值上加双引号
<input type="text" name='name' value="<?=($activity->name); ?>" class="form-control">
您可以同时使用这两种类型的报价。没有理由使用单引号/双引号
<input type='text' name='name' value='<?=($activity->name); ?>' class='form-control'>
<input type="text" name="name" value="<?=($activity->name); ?>" class="form-control">
使用表单帮助器:
$data=array(
'class' => 'form-control',
'name' => 'name',
'value' => set_value('name', $activity->name)
);
echo form_input($data);
或者如果你不想逃避任何事情
'value' => set_value('name', $activity->name, false)
我想对于codeigniter,使用它自己的语法输入文本框试试这个
<?php echo form_input(array("name" => "name", "class" => "form-control input-sm", "value" => $activity['name'])); ?>
您可以尝试在类中添加htmlspecialchars
。类似于
class Activity{
public $name = htmlspecialchars("value");
}
每个问题都有解决方案。
我厌倦了分配配置和所有我能做的事情。最终为您找到最佳解决方案。现在您不想为所有函数添加htmlspecialchars()
。只需使用下面的代码
在CI方法调用中还有一件事,请阅读
变化
转到system/core/input.php
(我使用的是CI 3,所以转到第254行)
改变这个
public function post($index = NULL, $xss_clean = NULL)
{
return $this->_fetch_from_array($_POST, $index, $xss_clean);
}
对此
public function post($index = NULL, $xss_clean = NULL)
{
return htmlspecialchars ($this->_fetch_from_array($_POST, $index, $xss_clean));
}
要使用此表单,方法应为method=“post”
。在控制器中,您必须使用$this->input->post(“”)代码>$\u POST
不适用于您的
示例-代码
视图中的(示例表单)
输入与输出
输入是这是一些粗体文本。
我从
输出是这是一些粗体文本。
登记入住
(推荐)
与其全局更改codeigniter函数,不如通过剥离所有不必要的字符来更改代码并保存名称数据。我想这样做,但用户需要插入单引号和双引号。我可以添加您需要的输出以及现在获得的输出吗?如果正确,您的值有双引号,并且与您的输出产生了某种形式的冲突?谢谢,问题是,如果$activity->name包含双引号,那么它仍然是相同的
public function post($index = NULL, $xss_clean = NULL)
{
return htmlspecialchars ($this->_fetch_from_array($_POST, $index, $xss_clean));
}
<?php echo form_open('welcome/form'); ?>
<h1>Create Contact Form Using CodeIgniter</h1>
<?php echo form_label('Student Name :'); ?>
<?php echo form_input(array('id' => 'dname', 'name' => 'dname')); ?>
<?php echo form_label('Student Email :'); ?>
<?php echo form_input(array('id' => 'demail', 'name' => 'demail')); ?>
<?php echo form_submit(array('id' => 'submit', 'value' => 'Submit')); ?>
<?php echo form_close(); ?>
echo $this->input->post('dname');