Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Lauro Daniel

Json retornando null com acentos no long poling mysql

Recommended Posts

Boa tarde!

 

Já pesquisei vários dias, encontrei muita coisa sobre o assunto mas nada resolve meu código.

 

Tenho um long poling que mantém uma conecção ativa com o servidor mysql por conta do chat que quando a palavra tem acento retorna null, tentei setar para utf 8 de todas as formas e não funciona, agredeço muito se alguém puder ajudar, segue o código:

 

 

<?php header ('Content-type: text/html; charset=utf-8');
?>
<meta content="text/html" charset="utf-8">
<?php
$id=$_GET['id'];
$timeStart = time();
// Create connection
$con = mysqli_connect('localhost','user','senha','nomedobanco');
// Check connection
if (mysqli_connect_errno($con))
die ('Failed to connect to MySQL: ' . mysqli_connect_error() );
// Change character set to utf8
//mysqli_set_charset($con,"utf8");
// select where item is new
if(isset($_POST['timestamp'])){
$timestamp = $_POST['timestamp'];
}else{
// get current database time
$row = mysqli_fetch_assoc(mysqli_query($con,'SELECT now() as now'));
$timestamp = $row['now'];
}
$sql = "SELECT * FROM `mensagens` WHERE idconversa ='$id' AND timestamp > '$timestamp' ";
//mysql_query('SET CHARACTER SET utf8');
$newData = false;
$notifications = array();
// loop while there is no new data and is running for less than 20 seconds
while(!$newData && (time()-$timeStart)<20){
// check for new data
$result = mysqli_query($con,$sql);
while($row = mysqli_fetch_assoc($result)){
$notifications[] = $row;
$newData = true;
}
// let the server rest for a while
usleep ( 500000 );
}
// get current database time
$row = mysqli_fetch_assoc(mysqli_query($con,'SELECT now() as now'));
$timestamp = $row['now'];
mysqli_close($con);
// output
$data = array('notifications'=>$notifications,'timestamp'=>$timestamp);
echo json_encode($data);
exit;
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.