26/12/2007, 07:11
|
| | Fecha de Ingreso: septiembre-2004
Mensajes: 10
Antigüedad: 20 años, 2 meses Puntos: 0 | |
Re: problemas con el paso de variables Hola a todos, he solucionado parte del problema:
en primer lugar aclarar que
<a href=\"displaydelete.php?id=".$id."\">
funciona. es decir me pasa el valor de la variable id al fichero displayaupdated.php.
lo que pasa que en displaydelete.php debo recuperar el valor de la variable con:
$id = $HTTP_GET_VARS["id"];
y ahora id si tiene el valor correcto.
El problema que tengo ahora es el siguiente:
en el fichero displayupdated.php recupero los campos de la BD cuyo id es el id que le pase con la orden anterior.
----------------
/*este es el fichero displayupdated.php*/
/*recuperamos el valor de la variable id con GET*/
$id = $HTTP_GET_VARS["id"];
mysql_select_db($db,$id_conexion); /*seleccionamos la bd*/
$consulta = mysql_query("SELECT * from ofertas where id='$id'",$id_conexion);
if($row = mysql_fetch_array($consulta))
{
/*$id=$row ["id"];*/
$titulo=$row ["titulo"];
$oferta=$row ["oferta"];
$precio=$row ["precio"];
$condiciones=$row ["condiciones"];
$visible=$row ["visible"];
$posicion=$row ["posicion"];
echo "<td><input type=\"hidden\" name=\"titulo\" value=\"".$id."\"></td></tr>";
echo "<tr>";
echo "<tr>";
echo "<td>TITULO:</td>";
echo "<td><input type=\"text\" name=\"titulo\" size=\"60\" value=\"".$titulo."\"></td></tr>";
echo "<tr>";
echo "<td>OFERTA:</td>";
echo "<td><textarea name=\"oferta\" cols=50 rows=10>".$oferta."</textarea></td></tr>";
echo "<tr>";
echo "<td>PRECIO:</td>";
echo "<td><input type=\"text\" name=\"precio\" size=\"25\" value=\"".$precio."\"></td></tr>";
echo "<tr>";
echo "<td>CONDICIONES:</td>";
echo "<td><textarea name=\"condiciones\" cols=50 rows=5>".$condiciones."</textarea></td></tr>";
echo "<tr>";
echo "<td>OFERTA VISIBLE:</td>";
echo "<td><input type=\"text\" name=\"visible\" size=\"2\" value=\"".$visible."\"> (si/no)</td></tr>";
echo "<tr>";
echo "<td>POSICION:</td>";
echo "<td><input type=\"text\" name=\"posicion\" size=\"5\" value=\"".$posicion."\"> (0,1,2,etc)</td></tr>";
echo "<tr>";
echo "<td></td>";
echo "<td><input type=\"submit\" size=\"2\" value=\"MODIFICAR OFERTA\"></td></tr>";
echo "<tr>";
echo "<td></td>";
echo "<td><br><a href=admin_ofertas.php class='titulonegro'><center>VOLVER A ADMINISTRACION DE OFERTAS</a></center></td></tr>";
}
?>
</p>
</td>
</tr>
</table>
</form>
</body>
</html>
-----------------------
de esa forma el usuario puede modificar cualquier campo del registro y cuando envie el formulario se actualizaran esos campos.
pero al enviar el formulario al fichero updated.php:
-----------------------------
/*este es el fichero updated.php*/
/*recupero las varibles pasadas del formulario con POST*/
$id = $HTTP_POST_VARS["id"];
$titulo = $HTTP_POST_VARS["titulo"];
$oferta = $HTTP_POST_VARS["oferta"];
$precio = $HTTP_POST_VARS["precio"];
$condiciones = $HTTP_POST_VARS["condiciones"];
$visible = $HTTP_POST_VARS["visible"];
$posicion = $HTTP_POST_VARS["posicion"];
/*PRUEBAS*/
echo ("<td class='textopequeno' align='center' bgcolor='#FFFFFF' width='5%'>el valor del TITLUO es: $titulo</td>\n");
echo $titulo;
echo "<br>";
echo ("<td class='textopequeno' align='center' bgcolor='#FFFFFF' width='5%'>el valor del id es: $id</td>\n");
echo "<br>";
/*actualizo las varibles en la BD*/
$sqlquery="UPDATE ofertas SET titulo=\"".$titulo."\" , oferta=\"".$oferta."\" , precio=\"".$precio."\" , condiciones=\"".$condiciones."\" , visible=\"".$visible."\" , posicion=\"".$posicion."\" where id=\"".$id."\"";
echo $sqlquery;
$result=mysql_query($sqlquery) or die ("no se ha podido realizar la consulta SQL");
echo "<br>";
echo "<br>";
echo "********** LA OFERTA SE MODIFICO CON EXITO **********";
echo "<br>";
echo "<br>";
echo "<br>";
echo ("<a href=admin_ofertas.php class='titulonegro'><center>VOLVER A ADMINISTRACION DE OFERTAS</a></center>");
?>
</body>
</html>
----------------------------
aunque recpere el valor de la variable id con
$id = $HTTP_POST_VARS["id"];
no me funciona la orden UPDATED ... where id=\"".$id."\""; YA QUE EL ID NO TIENE VALOR.
he probado a darle valor a la varible id dentro de este fichero y en este caso si que funciona perfectmaente.
como veis el problema es que no recupero el valor original de la variable id, fundamental para que todo funcione.
de nuevo, mil gracias a todos por vuestra ayuda. |