2014-09-15 6 views
0

스크립트에서 데이터베이스의 데이터를 복구하고 싶습니다. 데이터가 화면에 표시되면 악센트가있는 문자가 심문 지점에 표시됩니다. HTMLENTITES ($ variable, ENT_HTML5) 및 단어를 화면에서 표시하려고했습니다. 스크립트와 데이터는 UTF8로 인코딩됩니다.HTMLENTITIES 악센트가있는 단어 삭제

심문 포인트없이 데이터를 표시하려면 어떻게해야합니까?

미리 도움을 청하십시오!

여기 코드입니다.

$requete = "SELECT ID_MODULE, SIGLE, TITRE, ETAT, ANNEE FROM MODULE"; 
$res = mysqli_query($cxn,$requete); 
while ($ligne = mysqli_fetch_array($res)) { 
    echo '<tr>'; 
    echo '<td> <input type="checkbox" name="choix[]" value="'.$ligne['ID_MODULE'].'"> </td>'; 
    echo '<td>'.$ligne['SIGLE'].'</td>'; 
    echo '<td>'.$ligne['TITRE'].'</td>'; 
    echo '<td>'.htmlentities($ligne['ETAT'], ENT_HTML5).'</td>'; 
    echo '<td>'.$ligne['ANNEE'].'</td>'; 
    echo '</tr>'; 
} 
+0

무엇을 의미합니까? '?'샘플 문자열이 있습니까? – Ghost

+0

삼각형의 심문 지점입니다. – Sab25

답변

0

당신이해야 이 코드를 사용해보십시오.

mysqli_set_charset($this->mysqli,"utf8"); 
mysqli_set_charset($cxn,"utf8"); 
+0

자동 화질 필터가 답변을 표시했습니다. 아마 이것에 대해 조금 더 설명할까요? – Paul

+0

Charset은 HTML 헤더에서 정의됩니다. 왜 작동하지 않습니까? – Sab25

0

가 작동하는지 확인하려면 다음 코드를 사용 : 나는 htmlentities() 세 번째 매개 변수로 UTF-8을 통과 한

echo htmlentities($ligne['ETAT'], ENT_HTML5, "UTF-8"); 

을;

function _decodeAccented($encodedValue, $options = array()) { 
    $options += array(
     'quote'  => ENT_NOQUOTES, 
     'encoding' => 'UTF-8', 
    ); 
    return preg_replace_callback(
     '/&\w(acute|uml|tilde);/', 
     create_function(
      '$m', 
      'return html_entity_decode($m[0], ' . $options['quote'] . ', "' . 
      $options['encoding'] . '");' 
     ), 
     $encodedValue 
    ); 
} 

위의 기능이 htmlentities()에 공식 PHP.net 자료 문서에 대한 의견에서 복사 :

업데이트 : 작동하는지 이 기능을 사용하여 볼 수

http://php.net/manual/en/function.htmlentities.php#108222

+0

의 문자가 세 번째 매개 변수 – Sab25

+0

에서 작동하지 않습니다. 기능이 작동하지 않습니다. – Sab25