PHP - Caracteres especiales Ver tildes y ñ conexion php a mysql

 
Vista:
Imágen de perfil de KelDominVas

Caracteres especiales Ver tildes y ñ conexion php a mysql

Publicado por KelDominVas (2 intervenciones) el 08/05/2018 01:19:09
Buenas !
necesito ayuda he creado una conexion a base de datos con mysqli_conect pero el problema esque a la hora de mostrar y registrar datos con Tilde o ñ me aparecen numero o tras cosas que no tienen nada que ver.

CODIGO PHP CONEXION A BD MYSQL

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
    $con = mysqli_connect("localhost", "root", "", "sane");
    $username = $_GET["username"];
    $password = $_GET["password"];
    if (!mysqli_set_charset($con, "utf8")) {
        printf("error");
    }else{
        //Para que le ponga el utf8 para que me aparescan las tildes y ñ
    mysqli_character_set_name($con);
    $statement = mysqli_prepare($con, "SELECT * FROM users WHERE usuario = ? AND pass = ?");
    mysqli_stmt_bind_param($statement, "ss", $username, $password);
    mysqli_stmt_execute($statement);
    mysqli_stmt_store_result($statement);
    mysqli_stmt_bind_result($statement, $userID, $nombre, $username, $password);
    $response = array();
    $response["success"] = false;
    while(mysqli_stmt_fetch($statement)){
        $response["success"] = true;
        $response["nombre"] = $nombre;
        $response["usuario"] = $username;
        $response["pass"] = $password;
    }
    echo json_encode($response);
    }
?>

ESTO imprime
{"success":true,"nombre":"Juan L\u00f3pez Nu\u00f1es","usuario":"Juan","pass":"123"}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Caracteres especiales Ver tildes y ñ conexion php a mysql

Publicado por xve (6935 intervenciones) el 08/05/2018 07:43:32
Segun veo, estas conectando a mysql con el charset utf8... ahora faltaría ver en que formato se ha creado la base de datos, y que charset tiene la pagina HTML que muestra el contenido que envías en json.

Revisa que la pagina tenga el
1
<meta charset="utf-8">
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de KelDominVas

Caracteres especiales Ver tildes y ñ conexion php a mysql

Publicado por KelDominVas (2 intervenciones) el 08/05/2018 13:16:30
Ah! Lo muestro en a androidr studio
La BD está en utf8_inicode_ci
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 729
Bronce
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Caracteres especiales Ver tildes y ñ conexion php a mysql

Publicado por gonzalo (615 intervenciones) el 08/05/2018 17:26:06
buenas tardes don Kel

en uno de los post mas recientes puse los 3 puntos que hay que revisar para que la base de datos te respete los acentos, revisalo.

1 debes configurar la base de datos
2 debes configurar la conexion a mysql
3 debes configurar cada encabezado dependiendo si es unicamente php o si esta incluido en una pagina html.

cumpliendo con estos 3 puntos se arregla el problema (probado y comprobado),

salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Pedro
Val: 119
Ha disminuido 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Caracteres especiales Ver tildes y ñ conexion php a mysql

Publicado por Pedro (43 intervenciones) el 08/05/2018 21:10:15
Yo utilizo PDO y
/*Configuro la tabla de caracteres de la BD como UTF8*/
$opc = array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8");
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar