如何将清晰的复制粘贴数据转换为表单

时间:2016-11-30 02:08:27

标签: php substr strpos

我不确定此标题是否是此问题的正确标题。 我的问题是......有一个表格,需要通过副本填写。从文档粘贴。

以下是我的代码:

// length of rrnNo = 12 character, could be append with spaces and start with spaces as well 
$RRN = $this->input->post('rrnNo');

// do some search using $RRN
$checkRRN = strpos($text, $RRN)

if ($checkRRN !== FALSE)
{
   print $text;
}

我遇到了一个错误,当用户复制并粘贴整个12位数时,不显示搜索结果。但是当他们复制并粘贴最后9位数时,他们设法得到结果。所以我做的是......

// length of rrnNo = 12 character, could be append with spaces and start with spaces as well  
$RRN = $this->input->post('rrnNo');

// get last 9 digits
$shortRRN = substr($rrn,-9);

// do some search using shortRRN
$checkRRN = strpos($text, $shortRRN)

if ($checkRRN !== FALSE)
{
   print $text;
}

但仍然无法使用12位数字。他们仍然需要粘贴9位数据才能得到结果。感谢您的意见/建议。 感谢

1 个答案:

答案 0 :(得分:2)

使用此代码

$RRN = trim($this->input->post('rrnNo',true));
//trim the string to remove spaces before and after, and the second parameter is for xss handling (security) 

if (strpos(trim($text), $RRN) )
{
   print $text;
}

此外,如果您想确保用户只提供12个字符,请加载form-validation库并进行快速验证。

$this->form_validation->set_rules('rrnNo',"RNN number",'trim|required|min_length[12]|max_length[12]');
if ($this->form_validation->run()){
  //write your code in here
}