JavaScript - Botón Siguiente usando PHP, Mysql, JSon

 
Vista:

Botón Siguiente usando PHP, Mysql, JSon

Publicado por Didier Francisco Orjuela López (2 intervenciones) el 27/01/2016 21:59:52
Hola, Estoy intentando hacer un botón siguiente para mostrar el dato siguiente desde la base de datos, pero esto no me ha sido posible comenzando porque al principio cuando llamaba todos los datos de la base de datos me mostraba solo el ultimo valor registrado en la base de datos, razón por la cual lo tuve que limitar a 1

Les dejo una idea de lo que llevo, el problema es que tengo 10 registros en la base de datos, cuando cargo la pagina me muestra el primer dato, al darle siguiente me muestra el segundo registro, hasta acá todo bien, pero al darle siguiente nuevamente no me muestra el tercer registro como debería

Por favor su ayuda en este caso ya se una idea o consejo, quedo muy agradecido


Inicialmente creo la conexion a base de datos llamada sobrinos.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
	$bd = "sobrinos";
	$server = "localhost";
	$user = "root";
	$password = "";
 
 
	$conexion = @mysqli_connect($server, $user, $password, $bd);
	if(! $conexion) die("Error de conexion ".mysqli_connect_error());
 
	$sql = "SELECT Nombre, Edad from datos  limit 1";
	$result = mysqli_query($conexion, $sql);
	$array_user = array();
	while($data = mysqli_fetch_assoc($result)){
		$array_user[] = $data;
	}
 
		echo json_encode($array_user);
 
?>





--------------------------

Posteriormente creo lo que llama el boton siguiente enviándole parametros y devolviendo llamado next.php



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
<?php
	$Nombre = $_REQUEST['nom'];
 
	$bd = "sobrinos";
	$server = "localhost";
	$user = "root";
	$password = "";
 
	$conexion = @mysqli_connect($server, $user, $password, $bd);
	if(! $conexion) die("Error de conexion ".mysqli_connect_error());
 
	$sql = "SELECT * FROM datos WHERE Nombre > '$Nombre' ORDER BY Nombre LIMIT 1";
 
	$result = mysqli_query($conexion, $sql);
	$array_user = array();
	while($data = mysqli_fetch_assoc($result)){
		$array_user[] = $data;
	}
 
	$resultado = json_encode($array_user);
	echo $resultado;
 
 
 
 
?>



---------------

Por ultimo el codigo javascript

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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
<HTML>
	<?php include('header.html')?>
	<head>
		<script src="js/jquery.js"></script>
		<script src="js/bootstrap.min.js"></script>
		<script src="js/javascript.js"></script>
		<script>
			$(document).on("ready", function(){
				loadData();
			});
 
			var loadData = function(){
				$.ajax({
					type:"POST",
					url:"sobrinos.php"
				}).done(function(data){
					console.log(data);
					var arraysobrinos = JSON.parse(data);
 
 
					for(var i in arraysobrinos){
 
						var Nombre = arraysobrinos[i].Nombre;
						var Edad = arraysobrinos[i].Edad;
						document.getElementById('nom').innerHTML = Nombre;
						document.getElementById('eda').innerHTML = Edad;
 
 
						$('#Next').click(function(){
							$.ajax({
								type: "POST",
								data: "nom="+Nombre,
								url: "Next.php",
								success: function(respuesta){
									arraysobrinos = JSON.parse(respuesta);
									for(var i in arraysobrinos){
 
										var Nombre = arraysobrinos[i].Nombre;
										var Edad = arraysobrinos[i].Edad;
										document.getElementById('nom').innerHTML = Nombre;
										document.getElementById('eda').innerHTML = Edad;
									}
								}
							});
						});
					}
				});
			}
 
		</script>
	</head>
	<body style="background-color:#1565c0;">
 
		<div id="contenido">
			<h1 id = "nom" class="nom" ></h1>
			<h1 id = "eda" class="eda" ></h1>
			<input type="button" id = "Next"  value="Siguiente"/>
 
		</div>
 
	</body>
</HTML>
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.162
Oro
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

Botón Siguiente usando PHP, Mysql, JSon

Publicado por xve (2100 intervenciones) el 28/01/2016 09:03:34
Hola Didier, creo que tienes varios errores...

En la linea 25 y 26 vas sobreescribiendo los valores de los ids "nom" y "eda" durante todo el bucle, por eso te queda únicamente el ultimo... en la pagina sobrimos.php deberías de indicar que únicamente te devolviera el primer registro (limit 1), en vez de todos.
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