Ver Mensaje Individual
  #1 (permalink)  
Antiguo 05/03/2011, 02:31
Avatar de Gambinoh
Gambinoh
 
Fecha de Ingreso: diciembre-2010
Mensajes: 348
Antigüedad: 13 años, 5 meses
Puntos: 11
Imprimir una variable en otro div

Tengo una página con varios div's, en cada div imprimo un campo determinado de una fila de la tabla. Para hacer esto, le asigno a una variable llamada $sql un string como valor que contiene una consulta SQL:

Cita:
$sql = "SELECT * FROM tabla WHERE campo = '$id' ORDER BY id ASC LIMIT $inicio, $fin";
De momento como se puede observar sólo es una cadena de texto.

Luego, para ejecutar realmente la consulta, me sirvo de la función mysql_query():

Cita:
$query = mysql_query($sql);
Después para imprimir el campo llamado campo1 dentro de uno de los div, almaceno el array generado por la función mysql_fetch_assoc() en la variable $fila:

Cita:
while($fila = mysql_fetch_assoc($query)) {
echo $fila['campo1'];
}
Una vez explicado el mecanismo mediante el cual imprimo un campo determinado de la tabla en alguno de los div's de mi página, os comento mi problema.

Resulta que hasta ahora para imprimir sin problemas en cada div un campo, me veía obligado a declarar dentro de cada div las variables "$sql", "$query" y "$fila" (esta última dentro de su correspondiente bucle while).

Lo que quiero, es declarar sólo una vez las variables y luego sencillamente llamarlas. Al parecer no hay problemas para declarar en un div $a = 1; y luego en otro div imprimir con echo $a, pero cuando se trata de consultas a la base de datos algo falla. Si bien se trata de imprimir un campo desde un array que ya ha sido almacenado en la variable $fila anteriormente, no logro que se imprima.

Pongo un ejemplo del código que manejo:

Cita:

<div primero>
<?php


include('../archivos/conexion.php');

mysql_select_db('base_de_datos', $conexion);
//$conexión hace referencia al código incluído

$inicio = 0;
$fin = 1;

$sql = "SELECT * FROM tabla WHERE campo = '$id' ORDER BY id ASC LIMIT $inicio, $fin";
$query = mysql_query($sql);

while($fila = mysql_fetch_assoc($query)) {
echo $fila['campo1'];
}

?>
</div>


<div segundo>
<?php


echo $fila['campo2'];


?>
</div>
¿Cómo podría imprimir "echo $fila['campo2'];" sin declarar otra vez $sql, $query y $fila?