2017-08-28 42 views
0

在閱讀了許多類似問題(UTF-8 all the way through,php表單提交utf8?enter link description here,UTF-8不能以HTML格式工作enter link description here)並嘗試所有建議之後,我的應用程序中的用戶表單仍然無法處理特殊字符(é,è等)。一些其他注意事項:HTML格式不適用於以UTF-8格式發佈 - 儘管嘗試推薦

  • 我可以在DB(Postgres的)保存特殊字符,添加新用戶或編輯現有條目,沒有問題。如果我在Web應用程序中檢索這些條目,它會成功顯示特殊字符(例如,adminPage/usersTable或adminPage/userInfoEdit#)。

  • 但是,如果我嘗試保存該條目,它會將dbib寫入db。

PHP部首

<?php header("Content-Type: text/html;charset=UTF-8"); 

PHP郵政

if (empty($_POST) === false && empty($errors) === true) { 
    $registerData = array(
     'email' => $_POST['email'], 
     'first_name' => $_POST['firt_name'], 
     'last_name' => $_POST['last_name'], 
    ); 
registerUser($registerData); 

PHP函數

function registerUser($registerData) { 
    array_walk($registerData, 'arraySanitize'); 
pg_query("INSERT INTO utilisateur ($fields, date_inscription, statut) VALUES ($data, '$date','$statut')"); 
function arraySanitize(&$item) { 
    $item = htmlentities(strip_tags(pg_escape_string($item))); 
} 

HTML表單

<form method="post" action="" accept-charset="UTF-8"> 
    <div class="row"> 
     <div class="col-sm-6"> 
      <div class="form-group"> 
       <label>First name *</label> 
       <input type="text" class="form-control" name="firt_name" value=""> 
      </div> 
     </div> 
     <div class="col-sm-6"> 
      <div class="form-group"> 
       <label>Last name *</label> 
       <input type="text" class="form-control" name="firt_name" value=""> 
      </div> 
     </div> 
     <div class="col-sm-6"> 
      <div class="form-group"> 
       <label>email *</label> 
       <input type="text" class="form-control" name="email" value=""> 
      </div> 
     </div> 

    </div> 
</form> 

任何意見,建議,提示,資源將得到高度讚賞。如果您有任何問題,我很樂意澄清。 非常感謝!

回答

0

您的HTML <head>是否有<meta charset="utf-8">標記?

+0

是@kmoser: Dukanis