Error con php jquery json
Publicado por thor (1 intervención) el 19/10/2015 20:11:04
Hola, alguien me puede ayudar con este codigo.
Mi problema es que solo consigo obtener el ultimo registro de mi tabla cuando ejecuto un alert(response) el cual deberia mostrar todos los registros y no solo el ultimo.
Me pueden ayudar a encontrar el error para poder recuperar todos los registros y cargar mi select
Esta es mi funcion js donde quiero cargar un combo con los datos que rescato de una base de datos
Esta es mi funcion en php donde ejecuto mi procedimiento almacenado y de la cual quiero enviar el resultado en formato json hacia mi js
Finalmente tengo mi funcion que se encarga de extraer los datos y retornar el json.
Mi problema es que solo consigo obtener el ultimo registro de mi tabla cuando ejecuto un alert(response) el cual deberia mostrar todos los registros y no solo el ultimo.
Me pueden ayudar a encontrar el error para poder recuperar todos los registros y cargar mi select
Esta es mi funcion js donde quiero cargar un combo con los datos que rescato de una base de datos
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
26
27
28
29
30
31
32
33
34
function cargaDatos()
{
var parametros = {
"menuFunciones": 1
};
$.ajax({
type: 'POST',
url: './vistas/default/modulos/administracion/propiedades/ManejoDatos.php',
// contentType: "application/json; charset=utf-8",
dataType: "json",
data: parametros,
beforeSend: function () {
// $("#resultado").html("Procesando, espere por favor...");
},
success: function (response) {
alert(response)
$.each(response, function(i,item) {
alert(response)
$("#cmbDatos").append("<option value='" + item[i].idDatos + "'>"
+ "</option>");
});
},
error:function(){alert("Conexion con errores");}
});
}
Esta es mi funcion en php donde ejecuto mi procedimiento almacenado y de la cual quiero enviar el resultado en formato json hacia mi js
1
2
3
4
5
6
7
8
9
10
11
12
13
function cargarDatos() {
$objdb = new database();
$objdb->abrir();
$resultado = $objdb->consulta("CALL sp_cargarDatos()");
$objdb->cerrar();
$longitud = count($resultado);
for ($i = 0; $i < $longitud; $i++) {
$result = $resultado[$i];
echo json_encode($resultado);
}
}
Finalmente tengo mi funcion que se encarga de extraer los datos y retornar el json.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
public function consulta($query) {
$valores = array();
$result = mysqli_query($this->conn, $query);
if (!$result) {
die('Error query BD:' . mysqli_error());
} else {
$num_rows = mysqli_num_rows($result);
for ($i = 0; $i < $num_rows; $i++) {
$row = mysqli_fetch_assoc($result);
$valores = array_map('utf8_encode', $row);
}
}
if ($num_rows > 0) {
return json_encode($valores);
} else {
return 0;
}
}
Valora esta pregunta


0