PHP - Mostrar datos de PHP en mi web

 
Vista:

Mostrar datos de PHP en mi web

Publicado por Javier (2 intervenciones) el 19/04/2020 08:30:39
Hola a todos.
Quisiera saber si me pueden ayudar con este problema , no puedo mostrar datos de una base de datos mysql el codigo es el siguiente, no se que pueda estar mal.

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
<?php
 
//paso 1 es conectarnos con el servdior
$link = mysql_connect('185.201.10.73', 'u944436797_clan99', 'Boca2526*');
if(!$link){
echo 'No se puedo establecer conexion con el servidor: '. mysql_error();
}else{
//Paso 2 seleccionar base de datos
$base = mysql_select_db('CTF_TOP15' ,$link);
  if(!base){
    echo'No Se encontro la base de datos: '.mysql_error();
  }Else{
//paso 3 sentencia SQL y ejecutar la sentencia
    $sql = "SELECT * FROM CTF_TOP15";
    $ejecuta_sentencia = mysql_query($sql);
    if(!$ejecuta_sentencia){
      echo'Hay un error en la sentencia de sql: '.$sql;
    }else{
      //paso 4 traer los resultados como un array para poder imprimirlos en pantalla
      $lista_ctf_top15 = mysql_fetch_array($ejecuta_sentencia);
    }
  }
}
?>
<!DOCTYPE hmtl>
<html>
	<head>
		<title>Mostrar Datos</title>
			</head>
	<body>
		<h1>Mostrando Datos Desde Una Base De Datos</h1>
		<table>
			<tr>
				<th>Nombre</th>
				<th>Steamid</th>
             				<?php
					for($i=0; $i<$lista_ctf_top15; $i++){
						echo"<tr>";
							echo"<td>";
								echo$lista_ctf_top15['Nombre'];
							echo"</td>";
 
							echo"<td>";
								echo$lista_ctf_top15['Steamid'];
							echo"</td>";
						echo"</tr>";
 
						$lista_ctf_top15 = mysql_fetch_array($ejecuta_sentencia);
					}
				?>
			</tr>
		</table>
	</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 Julio
Val: 2.007
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Mostrar datos de PHP en mi web

Publicado por Julio (830 intervenciones) el 19/04/2020 09:17:34
Hola.

En primer lugar, quita el mysql_fetch_array de la línea 48. Ya tienes esos datos buscados de antes y, además, son los que estás recorriendo en el for. Si los vuelves a pedir, te fallará por algún lado.

En segundo lugar, las líneas 40 y 44 están mal, pues falta un espacio después del echo.

En tercer lugar, con ese for no creo que puedas recorrer el array, pues $i < $lista_ctf_top15 no está bien, ya que necesita saber el número de elementos del array y tú le pasas el array completo. Deberías hacer un count($lista_ctf_top15), aunque normalmente se utiliza un while para recorrer el array que viene de la base de datos.

En cuarto lugar, dentro del for haces $lista_ctf_top15['Nombre'], ¿de qué elemento? ¿Del primero, del segundo, del tercero...? Como no lo especificas, nunca va a encontrar ese elemento, por lo que no te va a funcionar.

En quinto lugar, en vez de mysql_fetch_array mejor utilizas mysql_fetch_assoc, pues mysql_fetch_array devuelve un array numérico, no con los índices (columnas de la base de datos).

Y en sexto lugar, ese table está mal construido. Tienes una <tr> y dentro los encabezados <th>, pero has puesto dentro el for con otras <tr> sin haber salido del primero <tr>, por lo que además de verse mal, siempre estarías en la primera fila.

En definitiva, que deberías hacer algo así: cárgate las líneas 18, 19, 20 y 21 (bueno, mantén el } en la línea 18). Y el código de la tabla es el siguiente:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<table>
	<thead>
		<tr>
			<th>Nombre</th>
			<th>Steamid</th>
		</tr>
	</thead>
	<tbody>
		<?php while ($fila = mysql_fetch_assoc($lista_ctf_top15)): ?>
			<tr>
				<td>
					<?php echo $fila['Nombre']; ?>
				</td>
				<td>
					<?php echo $fila['Steamid']; ?>
				</td>
			</tr>
		<?php endwhile; ?>
	</tbody>
</table>

Espero que sea suficiente con eso.

-----------------------------
Aprende la programación desde una perspectiva básica y simplista en Programación Básica
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