Ver Mensaje Individual
  #3 (permalink)  
Antiguo 31/12/2010, 03:31
oscarabi
 
Fecha de Ingreso: diciembre-2010
Ubicación: Huesca
Mensajes: 5
Antigüedad: 13 años, 3 meses
Puntos: 0
Respuesta: Pasar líneas de código php entre páginas

Hola, buenos días:

Efectivamente uso Ajax, y el código que he escrito creo que tiene que ser éste, con html, ya que el resultado puede tener hipervínculos en algún campo.

Cuando no hay hipervínculos hago lo siguiente, en la página o páginas desde donde se va a preparar el código:

$_SESSION["strSQL"]= "SELECT CAMPO_1, CAMPO_2, ..., CAMPO_N FROM TABLA
WHERE CAMPO1='CONDICION'
ORDER BY CAMPO_X ";

$_SESSION["encabezadoTabla"]="
<th>CAMPO_1</th>
<th>CAMPO_2</th>
<th>CAMPO_N</th>";

$campo[0]='CAMPO_1';
$campo[1]='CAMPO_2';
$campo[2]='CAMPO_N';

$_SESSION["campos"]= $campo;

Tenemos un botón que comprueba las condiciones de un filtro y llama a una página ajax que realizará la presentación de los datos de 50 en 50 en un div de la página origen.

En la página que genera la presentación de los datos tenemos:

$strSQL=$_SESSION["strSQL"];
$matriz = $_SESSION["campos"];
$rs=mysql_query($strSQL);

//comenzamos a dibujar la tabla
echo "<table>";
echo "<tr>";
//Aquí ponemos los encabezados que nos ha pasado la página
echo $_SESSION["encabezadoTabla"];
echo "</tr>";
//comenzamos a llenar las filas
while($fila=mysql_fetch_array($rs)){
echo "<tr>";
//empezamos a llenar los campos de cada fila
for ($j = 0; $j< count($matriz); $j++){
$nomCampo=$matriz[$j];
echo "<td>$fila[$nomCampo]</td>";
} //fin del for
echo "</tr>";
} //fin del while
echo "</table>";

Ésto funciona perfectamente. El problema lo tengo cuando queremos que aparezcan hipérvinculos en los campos mostrados en la tabla.

En resumen Se trataría de pasar, en lugar de
$campo[0]='CAMPO_1';

pasar esto:
<a href='detalle.php?num=".$fila['campo_n']."' title='Detalle' target='_blank'>".$fila['campo1']."</a>

Pero no quiero pasar el valor de $fila['campo3'], sino $fila['campo3'] (como si dijéramos, por referencia en lugar de por valor)

Gracias