Inserção de caracteres no banco ao invés de apóstrofe

Olá pessoal,

Tenho um sistema no qual o usuário digite um CEP e é buscado o bairro do mesmo.

Porém, tem um bairro chamado “Passo D’Areia”, que quando inserido no banco, ao invés do apóstrofe, são inseridos diversos caracteres.
Já tente de tudo mas não sei como resolver para que seja salvo o nome normalmente (em alguns casos ele insere normalmente, e em outros ele insere conforme imagem abaixo).

Alguém tem alguma ideia de como resolver?
bairros

Desde já agradeço pela atenção.
Espero que alguém consiga me dar uma luz para resolver isso kkk

ola

Em html existe o conceito de HTML entities.

' representa um apostofo.

https://www.w3schools.com/html/html_entities.asp

o que precisa ser verificado é o que esta acontecendo. Se vc esta salvando no banco de dados dessa forma, ou se por algum acaso ou se por alguma razão essa entidade não foi interpretada nessa sua tela.

Aí que está o problema… no campo que é salvo está sendo escrito “Passo D’Areia”, normalmente.

Porém ele salva de três diferentes formas… não estou conseguindo salvar somente da forma correta.

Se isso acontece então há outros pontos de insert no seu código, melhor revisar isso, pois é pouco provável que um único lugar de insert tenha comportamentos diferentes aleatoriamente… segue função que pode ajudar…

http://php.net/manual/pt_BR/function.htmlentities.php

Outro problema que vc pode enfrentar é truncar o valor do campo principalmente por causa de apostrofos, lembre-se que sql usa aspas simples como indicador de string/varchar/etc… melhor quando vc salvar na base usar essa outra função…

http://php.net/manual/pt_BR/function.addslashes.php

Assim onde houver aspas simples ele “escapa”, evitando conflitos no sql

E quando mostrar na tela use:

http://php.net/manual/pt_BR/function.stripslashes.php

cara isso não faz sentido. como pode salvar 3 formas diferentes?

vc tem diferentes tipos de input? alguem adicionou os dados na mão?