Este documento presenta código PHP para leer y escribir datos en formato JSON de una base de datos MySQL. Primero se decodifica un archivo JSON con datos de categorías y se imprime usando un bucle foreach. Luego se vuelve a leer el archivo JSON con un bucle for, insertando los registros en la tabla categoría de la base de datos. Finalmente, se ejecuta una consulta SQL para obtener datos de la tabla categoría, codificarlos a JSON y enviarlos como un archivo para descarga.
2. <?php
$conexion = mysql_connect("localhost","root","nones") or die (mysql_error());
mysql_select_db("programacion") or die (mysql_error());
$file = '[{"0":"1","ID_CATEGORIA":"1","1":"sdfsdf","CATEGORIA":"sdfsdf"},
{"0":"3","ID_CATEGORIA":"3","1":"POIUYTREWQ","CATEGORIA":"POIUYTREWQ"},
{"0":"5","ID_CATEGORIA":"5","1":"SDFSDF","CATEGORIA":"SDFSDF"},
{"0":"7","ID_CATEGORIA":"7","1":"DFGSDFG","CATEGORIA":"DFGSDFG"}]';
$array = json_decode($file);
echo"<h1>Lectura de archivo JSON con ARRAY</h1>";
//se leen el archivo y se muestra
//foreach($array as $obj){
// $idcat = $obj->idcat;
// $cat = $obj->cat;
// echo "<br>";
// echo $idmedico." ".$nombre;
// /*
// $sql = "insert into categoria (CATEGORIA)
// values ('$cat')";
// $ejecuta = mysql_query($sql,$conexion);
// */
echo"<br>";
echo"<h1>lectura de archivo JSON con ciclo FOR</h1><br>";
//se lee el archivo y se nuestra
4. <?php
function getArraySQL($sql){ //Creamos la conexión
$conexion = mysql_connect("localhost","root","nones") or die (mysql_error());
mysql_select_db("programacion") or die (mysql_error());
mysql_set_charset('utf8',$conexion);
//ejecutamos la consulta
$consulta=mysql_query($sql);
$rawdata = array(); //creamos un array
//guardamos en un array multidimensional todos los datos de la consulta
$i=0;
while($row = mysql_fetch_array($consulta))
{
$rawdata[$i] = $row;
$i++;
}
return $rawdata; //devolvemos el array
}//generamos la consulta
$sql="SELECT * FROM categoria";
//ejecutamos la funcion
$myArray = getArraySQL($sql);
//obtenemos los valores del array
$JASON=json_encode($myArray);
header('Content-type: text/plain');
header("Content-Disposition: attachment; filename="lorem-$JASON.txt"");