pw_fuw
Last Updated: February 25, 2016
·
23.55K
· develop_andrade
923375 10201076775627644 2007197150 n

Crear archivos JSON desde PHP y MySQL

Que onda!! En este articulo veremos como escribir un archivo json utilizando php y obteniendo datos de mysql, obtendremos los datos clasicos: {nombre, correo, edad, habilidades}.

comenzaremos con con el archivo para conectar a la base de datos:

<?php
//conectar.php
Class Conectar
{
    define(HOST, 'localhost');
    define(USER, 'root');
    define(PASS, '');
    define(DB, 'prueba');

    public static function con(){
        $con = mysql_connect(HOST,USER,PASS);
        mysql_query("SET NAMES: utf-8");
        mysql_db(DB):
        return $con;
    }
}
?>

Con esto ya tenemos el archivo para la conexion a la base de datos, pasamos al archivo para obtener los datos de la base de datos:

 <?php
require_once "conectar.php";

$sql = "select * from";
$res = mysql_query($sql, Conectar::con());
$row = mysql_fetch_Assoc($res);
$json = array(
    'Nombre' => $row['nombre'],
    'Correo' => $row['correo'],
    'Edad' => $row['edad'],
    'Habilidades' => array()
);


foreach($row as $val){
    $json['Habilidades'][] = $val;
}
?>

Con esto generamos un array de datos llamado $json, lo unico que quedaria seria hacerle un json_encode seguido de la creacion del archivo

<?php
$jsonencoded = json_encode($json,JSON_UNESCAPED_UNICODE);

$fh = fopen($row['username'].".json", 'w');
fwrite($fh, $jsonencoded);
fclose($fh);
?>

LE agregue el flag JSONUNESCAPEDUNICODE que asegura que los caracteres acentuados se conviertan a su equivalente en codificación UTF-8.

Con esto tenemos listo el fichero username.json

Say Thanks
Respond

5 Responses
Add your response

9470

Hola! soy nueva en esto de php y no sabia que existian archivos .json y me acabo de dar cuenta que los necesito para poder ocultar y mostrar marcadores en gmaps ya que como lo tengo ahorita solo con javascript,mysql y php me los pone todos de un jalon... y necesito poner los marcadores con un check box, tienes alguna idea de como hacerlo?

over 1 year ago ·
9487
923375 10201076775627644 2007197150 n

Hola, si tengo una idea, pero mira mejor te dejo un link, en donde te explican bien como funciona,
http://www.funcion13.com/2012/09/08/ocultando-y-mostrando-multiples-marcadores-en-google-maps/

Disculpa la demora, no habia tenido tiempo de entrar a revisar, pero por cualquier cosa que necesites, ahora si aqui estare con un poco mas de tiempo. Saludos

over 1 year ago ·
11350
0910a1112bb3d9cc0cce7db0ab8e8fa0

Hola, aún no tengo experiencia en el manejo de formatos json, ¿Cómo le haría para tomar el fichero username.json del lado de cliente? Para mostrarlo en un select de html.

over 1 year ago ·
14017
923375 10201076775627644 2007197150 n

Que onda lo haras con jquery y su fincion ajax ejemplo

$.ajax({
url: "username.json",
type: "json",
success: function(response){
    console.log(response)
}
});

Con esto ya estrias recogiendo los datos del username.json.

Saludos

over 1 year ago ·
15354

develop y luego de recogerlos como se imprimiria?
ayudame por faa

over 1 year ago ·