Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/01/2013, 13:28
hycq_69
 
Fecha de Ingreso: febrero-2012
Ubicación: Cagua Estado Aragua
Mensajes: 34
Antigüedad: 12 años, 2 meses
Puntos: 0
Formulario, variable session, metodo post

Mi saludo a toda la comunidad, acá les presento mi código:

lista_proveedores.php
Código PHP:
Ver original
  1. <html>
  2.     <head>
  3.         <!--<link rel="stylesheet" type="text/css" href="estilo_1.css" />-->
  4.         <link rel="stylesheet" type="text/css" href="estilo_lista.css" />
  5.     </head>
  6.         <body>
  7.  
  8.     <!-- Listado de Proveedores -->
  9.             <?
  10.             require_once("../conexion/conexion.php");
  11.             $sql="SELECT proveedores.nombre, proveedores.rif, proveedores.telefono, proveedores.correo, contactos.nombre_cont, contactos.telefono_cont FROM proveedores INNER JOIN contactos ON contactos.proveedor_id = proveedores.id";
  12.             $result=mysql_query($sql,$idconn);
  13.              if($result)  
  14.  {
  15.    echo "<table><tr><th>nombre</th><th>rif</th><th>tel&eacute;fono</th><th>correo</th><th>contacto</th><th>tlf contacto</th><th>&nbsp;</th></tr>";
  16.    while($fila=mysql_fetch_array($result))
  17.    {
  18.     echo "<tr><td>".$fila['nombre']."</td><td>".$fila['rif']."</td><td>".$fila['telefono']."</td><td>".$fila['correo']."</td><td>".$fila['nombre_cont']."</td><td>".$fila['telefono_cont']."</td><td><a href=./form_modificar.php?rif=".$fila["rif"]." target='_blank'>modificar</a></td></tr>";
  19.    }
  20.    echo "</table>";
  21.  }
  22.             ?>
  23.         </body>
  24. </html>

como pudieron ver aquí listo los proveedores y por GET envio el rif por medio del enlace modificar, (funciona perfectamente)

form_modificar.php
Código PHP:
Ver original
  1. </table>
  2.  
  3.         <table class="contenido">
  4.         <tr><td class="modulos"><dl>
  5.             <dt><a href="../modulo3_compras/form_compras.php" class="menus">compras</a><dt>
  6.             <dt><a href="../modulo1_proveedores/form_proveedores.php" class="menus">proveedores</a><dt>
  7.             <dt><a href="../modulo2_productos/form_productos.php" class="menus">productos</a><dt>
  8.             <dt><a href="../modulo7_servicios/form_servicios.php" class="menus">servicios</a><dt>
  9.             <dt><a href="../modulo5_facturacion/form_facturacion.php" class="menus">ventas</a><dt>
  10.             <dt><a href="#" class="menus">reportes</a><dt>
  11.             <dt><a href="#" class="menus">usuarios</a><dt>
  12.             <dt><a href="../modulo6_ctas_por_pagar/form_ctasxpagar.php" class="menus">ctas por pagar</a><dt>
  13.             </dl></td>
  14.  
  15.         <td class="form">
  16.  
  17.     <?
  18.     session_start();
  19.     require_once("../conexion/conexion.php");
  20.  
  21.            
  22.         if(isset($_GET['rif']))
  23.             $rif=$_GET['rif'];
  24.            
  25.             $_SESSION['rif'] = $rif;
  26.            
  27.             $sql3="select proveedores.rif,proveedores.nombre,proveedores.telefono,proveedores.direccion,proveedores.correo,nombre_cont,telefono_cont,correo_cont from contactos inner join proveedores on proveedores.id=contactos.proveedor_id where proveedores.rif=$rif";
  28.             $result3=mysql_query($sql3,$idconn);
  29.             if($result3>0)
  30.             {
  31.                 while($fila=mysql_fetch_array($result3))
  32.                 {
  33.     ?>
  34.                 <form name="modificar_proveedor" method="post" action="modificar.php">
  35.                 <fieldset><legend>modificar datos del proveedor</legend>
  36.                 <table class="form">
  37.                 <tr><th><label>nombre:</label></th>
  38.                 <td><input type="text" name="nombre" size="20" value="<?php echo $fila['nombre']; ?>" readonly="true"/></td>
  39.                 <th><label>rif:</label></th>
  40.                 <td><input type="text" name="rif" size="20" value="<?php echo $fila['rif']; ?>" readonly="true"/></td>
  41.                 </tr>
  42.                 <tr><th><label>tel&eacute;fono:</label></th>
  43.                 <td><input type="text" name="telefono" size="20" value="<?php echo $fila['telefono']; ?>"/></td>
  44.                 <th><label>correo:</label></th>
  45.                 <td><input type="text" name="correo" size="20" value="<?php echo $fila['correo']; ?>"/></td>
  46.                 </tr>
  47.                 <tr><th><label>direcci&oacute;n:</label></th>
  48.                 <td colspan="3"><input type="text" name="direccion" size="50" value="<?php echo $fila['direccion']; ?>"/></td>
  49.                 </tr>
  50.                 <tr><th><label>contacto:</label></th>
  51.                 <td><input type="text" name="nombrecont" size="25" value="<?php echo $fila['nombre_cont']; ?>"/></td>  
  52.                 <th><label>tel&eacute;fono:</label></th>
  53.                 <td><input type="text" name="telefonocont" size="20" value="<?php echo $fila['telefono_cont']; ?>"/></td>  
  54.                 </tr>
  55.                 <tr><th><label>correo:</label></th>
  56.                 <td colspan="3"><input type="text" name="correocont" size="20" value="<?php echo $fila['correo_cont']; ?>"/></td>
  57.  
  58.     <?}        
  59.             }?>
  60.             </tr>
  61.             </table></fieldset>
  62.                
  63.             <fieldset class="boton">
  64.             <button type="submit" name="guardar">
  65.                 <img src="guardar.png"/>
  66.             guardar
  67.             </button>
  68.             </fieldset>
  69.                
  70.                 </form></td></tr>   </table>
Aquí se muestro los datos del proveedor seleecionado, los cuales pueden ser modificados y se guardan pulsando el botón guardar

Ahora bien, el problema creo yo que es aqui:

modificar.php
Código PHP:
Ver original
  1. <?
  2.     session_start();
  3.     require_once("../conexion/conexion.php");
  4.  
  5.    
  6.             $sql='update contactos inner join proveedores on proveedores.id=contactos.proveedor_id set proveedores.telefono='.$_POST["telefono"].', proveedores.direccion='.$_POST["direccion"].', proveedores.correo='.$_POST["correo"].', nombre_cont='.$_POST["nombrecont"].',telefono_cont='.$_POST["telefonocont"].', correo_cont='.$_POST["correocont"].' where proveedores.rif='.$_SESSION["rif"].'';
  7.             $result=mysql_query($sql,$idconn);
  8.  
  9. mysql_close($idconn);
  10. header("location:form_proveedores.php");?>

al darle guardar deberían actualizarse los datos del proveedor, pero en vez de eso me redirecciona al formulario principal de los proveedores sin efectuar cambio alguno... La sentencia SQL ya la probé directamente en el phpmyadmin y funciona a la perfección.

Le he dado vueltas y vueltas al código y no hallo con la solución, Espero puedan ayudarme. Gracias de antemano...