저는 CodeIgniter를 사용하고 일부 입력 필드가있는 수식이 있습니다. 문제는 "&"과 같은 입력 필드에 특수 문자를 쓸 때 &
으로 저장되고 값을 편집하기 위해 양식을 다시로드 할 때 이와 같이 표시된다는 것입니다. 많은 오류가 발생하며 해결해야합니다. 값을 "&"으로 저장해야합니다.PHP/MySQL - 폼 입력 값 "&"은 "&"으로 저장됩니다.
I 그런 입력 필드 form_validation을 사용
$this->form_validation->set_rules("input1", "Name", "required|trim");
$this->form_validation->set_rules("input2", "Name", "required|trim");
나중에, I는 어레이의 모든 입력을 기록하고 모델의 함수로 넘겨 :
$input= array();
$input["input1"] = set_value("input1");
$input["input2"] = set_value("input2");
$this->MInput->update_input($input_id, $input);
모델 다음과 같이 표시됩니다.
function update_input($input_id, $input) {
if($this->db->update("pa_it_input", $input, "id = $input_id") === FALSE) {
$error = $this->db->error();
log_message("error", "Database error in MInput [".$error["code"]."] ".$error["message"]);
return FALSE;
}
무엇이 오류의 원인인지는 알 수 없습니다. 모든 테이블이 UTF-8로 설정되어 있고 페이지가 UTF-8로로드되어 있는지 확인했습니다.
그렇다면 문자열을 전달하는 인터페이스의 문서는'&'& '&'같은 문자 및 문자열에 대해 어떻게 말합니까? [mcve]에 대해서도 읽고 읽으십시오. – philipxy
이것은 아래의 ff 링크와 유사합니다. https://stackoverflow.com/questions/11704233/the-best-way-to-store-ampersand-in-mysql-database AND https://stackoverflow.com/questions/ 3545735/저장 앰퍼샌드 - 데이터베이스 – Riyenz
아마도 귀하의 양식과 관련이있을 것입니다. 보여주십시오. formhelpers 또는'form_prep()'사용 –