Estás utilizando variables PHP sin indicar que es código PHP
, por lo que al cargar la página no se lee el contenido de las variables, sino su nombre. Pido disculpas por la parte que me toca en mi código del ejemplo anterior.
Siempre que quieras embeber código PHP dentro de HTML tienes que indicarlo con las etiquetas de inicio y fin de PHP:
<?php ....... ?> Código PHP:
//Nota: si incluyes una variable de array dentro de una cadena: print " ... $_SERVER[PHP_SELF] .... "; no pongas comillas simples. Puedes separar con puntos para organizarte mejor: print $_SERVER['PHP_SELF'] . '?referencia=' . $row_Recordset1['referencia']....
<td><a href="<?php print "$_SERVER[PHP_SELF]?referencia=$row_Recordset1[referencia]&descripcion_trabajo=$row[descripcion_trabajo]&justificacion_trabajo=$row[justificacion_trabajo]"; ?>">Prueba</a></td>
Antes del formulario
Código PHP:
<?php
if (isset($_GET['referencia'])) {
$referencia=$_GET['referencia'];
$descripcion_trabajo=$_GET['descripcion_trabajo'];
$justificacion_trabajo=$_GET['justificacion_trabajo'];
} else {
$referencia='';
$descripcion_trabajo='';
$justificacion_trabajo='';
}
?>
En el formulario
Código HTML:
<td><input type="text" name="referencia" size="32" value="<?php print $referencia; ?>"></td>
<td><textarea name="descripcion_trabajo" cols="50" rows="5"><?php print $descripcion_trabajo; ?></textarea></td>//Textarea no utiliza value.
<td><textarea name="justificacion_trabajo" cols="50" rows="5"><?php print $justificacion_trabajo; ?></textarea></td>
EJEMPLO COMPLETO
Código HTML:
<html>
<head>
<title></title>
</head>
<body>
<a href="<?php print $_SERVER['PHP_SELF'].'?nombre=Fran&apellido=Quero'; ?>">Fran Quero</a><br><br>
<?php
if (isset($_GET['nombre'])) {
$nombre = $_GET['nombre'];
$apellido = $_GET['apellido'];
} else {
$nombre = '';
$apellido = '';
}
?>
<form action="#" method="POST">
Nombre: <input type="text" name="nombre" value="<?php print $nombre; ?>"><br><br>
Apellido: <input type="text" name="apellido" value="<?php print $apellido; ?>">
</form>
</body>
</html>
Saludos.
PD. ¿No te has planteado alguna forma de evitar que se repita la consulta?