0
I have a UTF-8 problem in my code.
I have a input text
with autocomplete (jquery function) that works ok with results coming from Mysql, but when a word is accented the accented letter appears a question mark(?).
Follows my code:
return cliente_process.php
<?php require_once("conexao/conexao.php"); ?>
<?php
$term = trim(strip_tags($_GET['term']));//retrieve the search term that autocomplete sends
$qstring = "SELECT clienteNome as value,clienteId as id FROM cliente WHERE clienteNome LIKE '%".$term."%' LIMIT 10";
$consulta_tr = mysqli_query($conecta, $qstring);
if(!$consulta_tr) {
die("erro no banco1");
}
while ($row = mysqli_fetch_array($consulta_tr,MYSQL_ASSOC))//loop through the retrieved values
{
$row['value']=htmlentities(stripslashes(utf8_decode($row['value'])));
$row['id']=(int)$row['id'];
$row_set[] = $row;//build an array
}
echo json_encode($row_set);//format the array into json data
?>
function js
$(document).ready(function() {
$('#clientes').autocomplete({
source: 'php/retornar_cliente_processo.php',
minLength: 1,
select: function(event, ui) {
$('#clienteId').val(ui.item.id);
$('.form-control').removeAttr("disabled");
$('#clientes').attr("disabled", "disabled");
$('#alteraNome').removeAttr("disabled");
},
}); }
html
<form class="form-horizontal" id="formCad">
<input type="hidden" name="clienteId" id="clienteId" placeholder="ID">
<div class="form-group">
<div class="col-md-12">
<label for="clienteNome" class="control-label">Nome do cliente</label>
<div class="input-group">
<input type="text" autocomplete="off" name="clienteNome" id="clientes" class="form-control" placeholder="Nome do cliente" required>
</div>
</div>
</div>
put in the
head
of html<meta charset="UTF-8">
– Brumazzi DB
I put it on but nothing’s changed
– Fernando Fefu
See if this helps: http://answall.com/a/120835/43292
– Jhonny Mesquita
did not help :(((
– Fernando Fefu
Take a look at your mysql, make a select in the same database to see if the data are with the encounter correct.
– tayllan
it’s all right. I realized that if I change this line: $Row['value']=htmlentities(stripslashes(utf8_decode($Row['value'])); for Ncode it appears strange characters.. and Decode it appears a question mark
– Fernando Fefu