PHP - ¿Cómo guardar el resultado de un ciclo while en una variable?

 
Vista:
sin imagen de perfil

¿Cómo guardar el resultado de un ciclo while en una variable?

Publicado por Luis (3 intervenciones) el 21/02/2016 19:00:49
Hola a tod@s, lo que tengo que hacer en este ejercicio es introducir un código, en esta primera página HTML.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<html>
 
<head>
 
<title>Página de prueba</title>
 
</head>
 
<body>
<center>
<table border="1">
<form name="form1" action="1.php" method="POST">
<tr><td>Codigo del alumno <input type="text" name="codigo"></tr></td>
<input type="submit" VALUE="ENVIAR">
</form>
</table>
</center>
</body>
 
</html>

En la 2º parte, tengo que mostrar los resultados que me da poner el código del alumno (Hasta aquí todo bien)
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
// Parte 1
session_start();
$codigo=$_POST['codigo'];
$_SESSION['codigo']=$codigo;
// Inicializar result1 y result2
echo "Codigo $codigo";
// Conectar a la base de datos
$enlace=mysql_connect('localhost','root','hola') or die ('No puedo conectarme');
//echo "Conectado";
mysql_select_db('notas') or die ('No se pudo seleccionar la base de datos');
$consulta="select * from ficha WHERE cod='$codigo'";
$result=mysql_query($consulta) or die ('Consulta fallida: ');
echo "<center><table width=50%><border=1>";
echo "<tr><td>CODIGO</td><td>ALUMNO</td><td>DOMICILIO</td></tr>";
while ($linea=mysql_fetch_array($result))
{
    echo "<tr><td>$linea[0]</td><td>$linea[1]</td><td>$linea[2]</td></tr>";
}
echo "</table></center>";
$consulta2="select * from eval WHERE cod='$codigo'";
$result2=mysql_query($consulta2) or die ('Consulta fallida: ');
echo "<center><table width=50%><border=1>";
echo "<tr><td>IAW</td><td>SRI</td><td>SAD</td></tr>";
while ($linea2=mysql_fetch_array($result2))
{
    echo "<tr><td>$linea2[0]</td><td>$linea2[1]</td><td>$linea2[2]</td></tr>";
}
echo "</table></center>";
echo "<a href='2.php'>Inprimir</a>";

Y en la 3º página cuando le doy a Inprimir me debería de salir en un PDF (Tengo la libreria ) el resultado del ciclo While que he hecho anteriormente arriba, pero no sé como coger ese resultado en una variable. También me han comentado algo de las variables de sesión, pero no las entiendo muy bien. ¿Alguna sugerencia? Gracias.
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.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

¿Cómo guardar el resultado de un ciclo while en una variable?

Publicado por xve (6935 intervenciones) el 21/02/2016 20:10:31
Hola Luis, si lo que quieres es guardar en una variable lo mismo que muestras en el "echo", puedes guardar todos tus "echo" dentro de una variable de sessión, y al final mostrar el resutado... algo así:

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
// Parte 1
session_start();
$codigo=$_POST['codigo'];
$_SESSION['codigo']=$codigo;
// Inicializar result1 y result2
 
$_SESSION["contenido"]="";
 
$_SESSION["contenido"].="Codigo $codigo";
// Conectar a la base de datos
$enlace=mysql_connect('localhost','root','hola') or die ('No puedo conectarme');
//$_SESSION["contenido"].="Conectado";
mysql_select_db('notas') or die ('No se pudo seleccionar la base de datos');
$consulta="select * from ficha WHERE cod='$codigo'";
$result=mysql_query($consulta) or die ('Consulta fallida: ');
$_SESSION["contenido"].="<center><table width=50%><border=1>";
$_SESSION["contenido"].="<tr><td>CODIGO</td><td>ALUMNO</td><td>DOMICILIO</td></tr>";
while ($linea=mysql_fetch_array($result))
{
    $_SESSION["contenido"].="<tr><td>$linea[0]</td><td>$linea[1]</td><td>$linea[2]</td></tr>";
}
$_SESSION["contenido"].="</table></center>";
$consulta2="select * from eval WHERE cod='$codigo'";
$result2=mysql_query($consulta2) or die ('Consulta fallida: ');
$_SESSION["contenido"].="<center><table width=50%><border=1>";
$_SESSION["contenido"].="<tr><td>IAW</td><td>SRI</td><td>SAD</td></tr>";
while ($linea2=mysql_fetch_array($result2))
{
    $_SESSION["contenido"].="<tr><td>$linea2[0]</td><td>$linea2[1]</td><td>$linea2[2]</td></tr>";
}
$_SESSION["contenido"].="</table></center>";
$_SESSION["contenido"].="<a href='2.php'>Inprimir</a>";
 
echo $_SESSION["contenido"];

De esta manera, en la pagina 3, podras utilizar la variable: $_SESSION["contenido"] para crear el pdf.

Es esto lo que buscas?
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