• Lunes 23 de Diciembre de 2024, 14:13

Autor Tema:  Actualización de Datos  (Leído 2922 veces)

Kataky

  • Miembro activo
  • **
  • Mensajes: 31
    • Ver Perfil
Actualización de Datos
« en: Lunes 8 de Junio de 2009, 05:14 »
0
Hola a todos:
Soy nueva en PHP, antes programaba en Visual. Me he recorrido todo internet tratando de resolver mi problema. Tengo un código (EditaEmp.php) que mediante un select permite seleccionar el nombre de la empresa a actualizar y llama a otro script (EditaEmp1.php) en el cual muestra los datos a editar y una vez clicleado Guardar llama a otro script (grabau.php) que recibe los datos y no me hace el update del registro, sé que por alguna razón extraña no le llega el valor de la variable $Nombre_emp que es con la que busco el registro a modificar, pero sin embargo todas las otras variables son recibidas.
Les quedó agradecida de antemano si me pueden ayudar.

Edita Emp.php
<table width="800" border="1"  bordercolor="#CCCCCC"  align="center" cellpadding="10" cellspacing="0">
    <form method='POST' action='EditaEmp1.php'>
        <tr>
        <td colspan='2' bgcolor="#ECEEF0"><div align='center'>
        <p><span class="Estilo1">Editar Empresa</span><br/>
        </p>
        </div></td>
        </tr>
        <tr>
        <td width="210">Nombre Empresa :</td>
        <td width="544">
        <?
         include("config.inc.php");
         $consult_emp="SELECT id_emp,Nombre_emp,Rut_emp,Telefono_emp,Direccion_emp FROM empresa ORDER BY Nombre_emp";
         $result=mysql_query($consult_emp) or die ("Fallo la busqueda");
         echo '<select name="Nombre_emp"/>';
         //Generamos el menu desplegable
         while ($row=mysql_fetch_array($result))
            {
               echo '<option>'.$row["Nombre_emp"];
               $Nombre_emp=$row["Nombre_emp"];
            }
      ?>
        </td>
        </tr>
        <br/>
        <tr>
        <td colspan='2' align='center' bgcolor="#ECEEF0">
        <input name='Seleccionar' type='submit' value='Seleccionar' /></td>
        </tr>
    </form>
</table>

EditaEmp1.php
<?
    include("config.inc.php");
   $Nom=$_POST["Nombre_emp"];
   $sql="SELECT Nombre_emp,Rut_emp,Telefono_emp,Direccion_emp FROM Empresa WHERE Nombre_emp='$Nombre_emp'";
   $result=mysql_query($sql) or die("Problemas en la conexion en la Selección");
   while ($row=mysql_fetch_array($result))
   {
      $Nombre_emp=$row["Nombre_emp"];
      $rut=$row["Rut_emp"];
      $separar = explode('-',$rut);
      $rut1=$separar[0];
      $dig=$separar[1];
      $tel=$row["Telefono_emp"];
      $dir=$row["Direccion_emp"];
   }
?>
<table width="800" border="1"  bordercolor="#CCCCCC"  align="center" cellpadding="10" cellspacing="0">
    <form id='EditaEmp1' name='form1' method='POST' action='grabau.php?Nombre_emp'>
        <tr>
        <td colspan='2' bgcolor="#ECEEF0"><div align='center'>
        <p><span class="Estilo1">Editar Datos de la Empresa: <? echo $Nombre_emp; ?></span><br/>
        </p>
        </div></td>
        </tr>
        <tr><td>Rut :</td><td><span>
        <input name='rut1' value='<? echo $rut1 ?>' type='text' size='10' maxlength='9' />
        -
        <input name='dig' value='<? echo $dig ?>' type='text' size='1' maxlength='2' />
        </span>
        </td></tr><tr><td>Telefono :</td><td><span>
        <input name='tel' value='<? echo $tel ?>' type='text' size='10' maxlength='10' />
        </span>
        </td></tr><tr><td>Dirección :</td><td><span>
        <input name='dir' value='<? echo $dir ?>' type='text' size='65' maxlength='150' /></span></td>
        </tr>
        <br/>
        <tr>
        <td colspan='2' align='center' bgcolor="#ECEEF0">
        <input name='Guardar' type='submit' value='Guardar' /></td>
        </tr>
        <tr>
        <td colspan='2' valign='top'>&nbsp;</td>
        </tr>
    </form>
</table>

grabau.php:
    <?
   include ("config.inc.php");
   $Nombre_emp=$_POST["Nombre_emp"];
   $rut1 = $_POST['rut1'];
   $dig = $_POST['dig'];
   $rut = $rut1.'-'.$dig;
   $tel = $_POST['tel'];
   $dir = $_POST['dir'];
   $Nom = $_POST['Nom'];
   echo "Nombre_emp: ",$Nombre_emp,$Nom,$rut1,"- ",$rut,"Dir: ",$dir,"Tel; ",$tel;
   mysql_query("UPDATE 'empresa' SET Rut_emp='$rut',Telefono_emp='$tel',Direccion_emp='$dir' WHERE Nombre_emp='$Nombre_emp'") or die ("NO GRABO");
   ?>
    <form name='add_emp' method='POST' >
    <table width="800" border="1"  bordercolor="#CCCCCC"  align="center" cellpadding="10" cellspacing="0">
      <tr>
        <th align="center" bgcolor="#ECEEF0" class="titnoticia2" scope="col">Grabación  Empresa </th>
      </tr>
      <tr>
        <td bordercolor="#000000"><table width="774" height="35">
          <tr>
            <td><div align="center">
            <div align="center" class="Estilo1"> DATOS DE NUEVA EMPRESA GRABADO EXITOSAMENTE</div></td>
          </tr>
        </table></td>
      </tr>
     
      <tr>
        <td align='center'  bgcolor="#ECEEF0"><a href="menu_central.php">VOLVER</a></span>&nbsp;&nbsp;&nbsp;&nbsp;<span align="right"> <a href="logout.php">SALIR</a></span></td>
      </tr>
    </table>
    </form>

lair

  • Miembro MUY activo
  • ***
  • Mensajes: 213
  • Nacionalidad: mx
    • Ver Perfil
Re: Actualización de Datos
« Respuesta #1 en: Lunes 8 de Junio de 2009, 22:47 »
0
Hola:

lo que pasa es que en este fragmento de tu codigo tienes lo siguiente:

Código: PHP
  1. $result=mysql_query($consult_emp) or die ("Fallo la busqueda");
  2. echo '<select name="Nombre_emp"/>'; //AQUI
  3. //Generamos el menu desplegable
  4. while ($row=mysql_fetch_array($result))
  5. {
  6. echo '<option>'.$row["Nombre_emp"];// Y AQUI ESPECIFICAMENTE
  7. $Nombre_emp=$row["Nombre_emp"];
  8. }
  9.  

la sintaxis basica del select dice asi:

Código: Text
  1. <SELECT NAME=“puntuacion” SIZE=11>
  2. <OPTION VALUE=“10”>Puntuo con un 10
  3. <OPTION VALUE=“9”>Puntuo con un 9
  4. <OPTION VALUE=“8”>Puntuo con un 8
  5. <OPTION VALUE=“7”>Puntuo con un 7
  6. <OPTION VALUE=“6”>Puntuo con un 6
  7. <OPTION VALUE=“5”>Puntuo con un 5
  8. <OPTION VALUE=“4”>Puntuo con un 4
  9. <OPTION VALUE=“3”>Puntuo con un 3
  10. <OPTION VALUE=“2”>Puntuo con un 2
  11. <OPTION VALUE=“1”>Puntuo con un 1
  12. <OPTION VALUE=“0”>Puntuo con un 0
  13. </SELECT>
  14.  

donde value es el valor real que se envia en la variable puntuacion, que en tu caso seria <select name="Nombre_emp"/>

suerte

Kataky

  • Miembro activo
  • **
  • Mensajes: 31
    • Ver Perfil
Re: Actualización de Datos
« Respuesta #2 en: Martes 9 de Junio de 2009, 04:52 »
0
Hola Lair

Gracias por responder pero mi problema no esta en el llenado del SELECT eso lo hace bien, puedo seleccionar mi empresa sin problema pasando el nombre al segundo script (EditaEmp1.php) sin problemas y recupero los datos para ser modificados, una vez que pinchan GUARDAR llamo al script grabau.php que lo único que hace es llamar a la función guardar() quien realiza el UPDATE y retorna a grabau.php con un mensaje de exito o fracaso. En este caso es de fracaso la grabación, sé que fracasó porque no le llega la variable $Nombre_emp,este es mi problema, la variable pasa de un script a otro pero no llega a la función.

Gracias de todas maneras, seguiré  intentandolo..... :comp:

lair

  • Miembro MUY activo
  • ***
  • Mensajes: 213
  • Nacionalidad: mx
    • Ver Perfil
Re: Actualización de Datos
« Respuesta #3 en: Martes 9 de Junio de 2009, 17:52 »
0
Cita de: "Kataky"
sé que fracasó porque no le llega la variable $Nombre_emp,este es mi problema,

por eso, me parese que no esta llegando por que no estas haciendo el llenado del select de manera correcta, en la creacion del select (<select name="nombre">) ese es el nombre de tu variable y en cada option lleva un atributo value (<option value="variable PHP">), este value es el que se envia en la variable del select.

verifica tu codigo y ve como esta el ejemplo que te planteo.

tu codigo deberia de ser de la siguiente manera:

Código: PHP
  1. $result=mysql_query($consult_emp) or die ("Fallo la busqueda");
  2. echo '<select name="Nombre_emp">'; //AQUI
  3. //Generamos el menu desplegable
  4. while ($row=mysql_fetch_array($result))
  5. {
  6.     echo '<option value="'.$row["Nombre_emp"].'">'.$row["Nombre_emp"];// Y AQUI ESPECIFICAMENTE
  7.     $Nombre_emp=$row["Nombre_emp"];
  8. }
  9. echo '</select>';
  10.  

pruebalo y suerte, aqui estamos para cualquier duda

Kataky

  • Miembro activo
  • **
  • Mensajes: 31
    • Ver Perfil
Re: Actualización de Datos
« Respuesta #4 en: Martes 9 de Junio de 2009, 22:22 »
0
Hola Lair

Lo probe pero en el momento que coloco el option value me deja de mostrar los nombres de empresa y por lo tanto no puedo hacer la selección.

De todas formas un millón de gracias, seguire buscando e intentandolo... :hitcomp:

lair

  • Miembro MUY activo
  • ***
  • Mensajes: 213
  • Nacionalidad: mx
    • Ver Perfil
Re: Actualización de Datos
« Respuesta #5 en: Martes 9 de Junio de 2009, 23:32 »
0
Hola:

mira revisando mas a detalle tu codigo me paresio encontrar mas errores:

Edita Emp.php
Código: PHP
  1.  
  2. <table width="800" border="1" bordercolor="#CCCCCC" align="center" cellpadding="10" cellspacing="0">
  3.     <form method='POST' action='EditaEmp1.php'>
  4.         <tr>
  5.             <td colspan='2' bgcolor="#ECEEF0"><div align='center'>
  6.                 <p><span class="Estilo1">Editar Empresa</span><br/>
  7.                 </p>
  8.                 </div>
  9.             </td>
  10.         </tr>
  11.         <tr>
  12.             <td width="210">Nombre Empresa :</td>
  13.             <td width="544"> <!-- si vas a extenderlo mejor usa un colspan o rowspan -->
  14.                 <?
  15.                     include("config.inc.php");
  16.                     $consult_emp="SELECT id_emp,Nombre_emp,Rut_emp,Telefono_emp,Direccion_emp FROM empresa ORDER BY Nombre_emp";
  17.                     $result=mysql_query($consult_emp) or die ("Fallo la busqueda");
  18.  
  19.                     echo '<select name="Nombre_emp"/>';//la variable que esperas capturar se llama Nombre_emp
  20.  
  21.                     //Generamos el menu desplegable
  22.                     while ($row=mysql_fetch_array($result))
  23.                     {
  24.                         echo '<option>'.$row["Nombre_emp"];
  25.                         $Nombre_emp=$row["Nombre_emp"];
  26.                     }
  27.                 ?>
  28.             </td>
  29.         </tr>
  30.         <br/><!-- este no sirve de nada aqui -->
  31.         <tr>
  32.             <td colspan='2' align='center' bgcolor="#ECEEF0">
  33.                 <input name='Seleccionar' type='submit' value='Seleccionar' />
  34.             </td>
  35.         </tr>
  36.     </form>
  37. </table>
  38.  

EditaEmp1.php
Código: PHP
  1.  
  2. <?
  3.     include("config.inc.php");
  4.  
  5.     $Nom=$_POST["Nombre_emp"];//aqui la capturas y la almacenas en la variable $Nom
  6.  
  7.     /*
  8.      * Aqui tu variable $Nombre_emp ya no existe ahora es $Nom, por lo que creo que esa consulta es retornando vacio
  9.      */
  10.     $sql="SELECT Nombre_emp,Rut_emp,Telefono_emp,Direccion_emp FROM Empresa WHERE Nombre_emp='$Nombre_emp'";
  11.  
  12.     $result=mysql_query($sql) or die("Problemas en la conexion en la Selección");
  13.     while ($row=mysql_fetch_array($result))
  14.     {
  15.         $Nombre_emp=$row["Nombre_emp"];
  16.         $rut=$row["Rut_emp"];
  17.         $separar = explode('-',$rut);
  18.         $rut1=$separar[0];
  19.         $dig=$separar[1];
  20.         $tel=$row["Telefono_emp"];
  21.         $dir=$row["Direccion_emp"];
  22.     }
  23. ?>
  24. <table width="800" border="1" bordercolor="#CCCCCC" align="center" cellpadding="10" cellspacing="0">
  25.     <!--
  26.     Aqui a la linea action='grabau.php?Nombre_emp' no solo la variable no existe sino que si quieres poner ahi un parametro que viene desde     php deveria ser de la siguiente manera action='grabau.php?<?php echo $Nombre_emp; ?>' eso en caso de que ESA VARIABLE SEA LA CORRECTA
  27.     -->
  28.     <form id='EditaEmp1' name='form1' method='POST' action='grabau.php?Nombre_emp'>
  29.     <tr>
  30.         <td colspan='2' bgcolor="#ECEEF0"><div align='center'>
  31.             <p><span class="Estilo1">Editar Datos de la Empresa: <? echo $Nombre_emp; ?></span><br/>
  32.             </p>
  33.             </div>
  34.         </td>
  35.     </tr>
  36.     <tr>
  37.         <td>Rut :</td>
  38.         <td><span>
  39.             <input name='rut1' value='<? echo $rut1 ?>' type='text' size='10' maxlength='9' />
  40.             -
  41.             <input name='dig' value='<? echo $dig ?>' type='text' size='1' maxlength='2' />
  42.             </span>
  43.         </td>
  44.     </tr>
  45.     <tr>
  46.         <td>Telefono :</td>
  47.         <td><span>
  48.             <input name='tel' value='<? echo $tel ?>' type='text' size='10' maxlength='10' />
  49.             </span>
  50.         </td>
  51.     </tr>
  52.     <tr>
  53.         <td>Dirección :</td>
  54.         <td><span>
  55.             <input name='dir' value='<? echo $dir ?>' type='text' size='65' maxlength='150' /></span>
  56.         </td>
  57.     </tr>
  58.     <br/>
  59.     <tr>
  60.         <td colspan='2' align='center' bgcolor="#ECEEF0">
  61.             <input name='Guardar' type='submit' value='Guardar' />
  62.         </td>
  63.     </tr>
  64.     <tr>
  65.         <td colspan='2' valign='top'> </td>
  66.     </tr>
  67.     </form>
  68. </table>
  69.  

grabau.php:
Código: PHP
  1.  
  2. <?
  3.     include ("config.inc.php");
  4.     /* No estoy seguro de lo que intentas pero si esta variable es la que mandas por URL (osea aqui action='grabau.php?Nombre_emp'>) no la puedes capturar con $_POST sino con $_GET
  5.  *
  6.  */
  7.     $Nombre_emp=$_POST["Nombre_emp"];
  8.     $rut1 = $_POST['rut1'];
  9.     $dig = $_POST['dig'];
  10.     $rut = $rut1.'-'.$dig;
  11.     $tel = $_POST['tel'];
  12.     $dir = $_POST['dir'];
  13.     $Nom = $_POST['Nom'];
  14.     echo "Nombre_emp: ",$Nombre_emp,$Nom,$rut1,"- ",$rut,"Dir: ",$dir,"Tel; ",$tel;
  15.     mysql_query("UPDATE 'empresa' SET Rut_emp='$rut',Telefono_emp='$tel',Direccion_emp='$dir' WHERE Nombre_emp='$Nombre_emp'") or die ("NO GRABO");
  16. ?>
  17. <form name='add_emp' method='POST' >
  18.     <table width="800" border="1" bordercolor="#CCCCCC" align="center" cellpadding="10" cellspacing="0">
  19.         <tr>
  20.             <th align="center" bgcolor="#ECEEF0" class="titnoticia2" scope="col">Grabación Empresa </th>
  21.         </tr>
  22.         <tr>
  23.             <td bordercolor="#000000"><table width="774" height="35">
  24.         <tr>
  25.             <td><div align="center">
  26.             <div align="center" class="Estilo1"> DATOS DE NUEVA EMPRESA GRABADO EXITOSAMENTE</div>
  27.             </td>
  28.         </tr>
  29.     </table>
  30.     </td> <!-- Creo que estas etiquetas sobran o estan mal posicionadas -->
  31.     </tr>
  32.  
  33.     <tr>
  34.     <td align='center' bgcolor="#ECEEF0">
  35.         <a href="menu_central.php">VOLVER</a></span>    <span align="right"> <a    href="logout.php">SALIR</a></span></td>
  36.     </tr>
  37.     </table>
  38. </form>
  39.  

intenta con todo eso y suerte, si persisten las molestias aqui estamos para ayudar

SUERTE :good:

F_Tanori

  • Moderador
  • ******
  • Mensajes: 1919
  • Nacionalidad: mx
    • Ver Perfil
Re: Actualización de Datos
« Respuesta #6 en: Miércoles 10 de Junio de 2009, 01:27 »
0
Edita Emp.php
Código: PHP
  1. <table width="800" border="1"  bordercolor="#CCCCCC"  align="center" cellpadding="10" cellspacing="0">
  2.     <form method='POST' action='EditaEmp1.php'>
  3.         <tr>
  4.         <td colspan='2' bgcolor="#ECEEF0"><div align='center'>
  5.         <p><span class="Estilo1">Editar Empresa</span><br/>
  6.         </p>
  7.         </div></td>
  8.         </tr>
  9.         <tr>
  10.         <td width="210">Nombre Empresa :</td>
  11.         <td width="544">
  12.         <?
  13.             include("config.inc.php");
  14.             $consult_emp="SELECT id_emp,Nombre_emp,Rut_emp,Telefono_emp,Direccion_emp FROM empresa ORDER BY Nombre_emp";
  15.             $result=mysql_query($consult_emp) or die ("Fallo la busqueda");
  16.             echo '<select name="Nombre_emp"/>';
  17.             //Generamos el menu desplegable
  18.             while ($row=mysql_fetch_array($result))
  19.                 {
  20.                     echo '<option>'.$row["Nombre_emp"];
  21.                     $Nombre_emp=$row["Nombre_emp"];
  22.                 }
  23.         ?>
  24.         </td>
  25.         </tr>
  26.         <br/>
  27.         <tr>
  28.         <td colspan='2' align='center' bgcolor="#ECEEF0">
  29.         <input name='Seleccionar' type='submit' value='Seleccionar' /></td>
  30.         </tr>
  31.     </form>
  32. </table>
  33.  

EditaEmp1.php
Código: PHP
  1. <?
  2.     include("config.inc.php");
  3.     $Nom=$_POST["Nombre_emp"];
  4.     $sql="SELECT Nombre_emp,Rut_emp,Telefono_emp,Direccion_emp FROM Empresa WHERE Nombre_emp='$Nombre_emp'";
  5.     $result=mysql_query($sql) or die("Problemas en la conexion en la Selección");
  6.     while ($row=mysql_fetch_array($result))
  7.     {
  8.         $Nombre_emp=$row["Nombre_emp"];
  9.         $rut=$row["Rut_emp"];
  10.         $separar = explode('-',$rut);
  11.         $rut1=$separar[0];
  12.         $dig=$separar[1];
  13.         $tel=$row["Telefono_emp"];
  14.         $dir=$row["Direccion_emp"];
  15.     }
  16. ?>
  17. <table width="800" border="1"  bordercolor="#CCCCCC"  align="center" cellpadding="10" cellspacing="0">
  18.     <form id='EditaEmp1' name='form1' method='POST' action='grabau.php?Nombre_emp'>
  19.         <tr>
  20.         <td colspan='2' bgcolor="#ECEEF0"><div align='center'>
  21.         <p><span class="Estilo1">Editar Datos de la Empresa: <? echo $Nombre_emp; ?></span><br/>
  22.         </p>
  23.         </div></td>
  24.         </tr>
  25.         <tr><td>Rut :</td><td><span>
  26.         <input name='rut1' value='<? echo $rut1 ?>' type='text' size='10' maxlength='9' />
  27.         -
  28.         <input name='dig' value='<? echo $dig ?>' type='text' size='1' maxlength='2' />
  29.         </span>
  30.         </td></tr><tr><td>Telefono :</td><td><span>
  31.         <input name='tel' value='<? echo $tel ?>' type='text' size='10' maxlength='10' />
  32.         </span>
  33.         </td></tr><tr><td>Dirección :</td><td><span>
  34.         <input name='dir' value='<? echo $dir ?>' type='text' size='65' maxlength='150' /></span></td>
  35.         </tr>
  36.         <br/>
  37.         <tr>
  38.         <td colspan='2' align='center' bgcolor="#ECEEF0">
  39.         <input name='Guardar' type='submit' value='Guardar' /></td>
  40.         </tr>
  41.         <tr>
  42.         <td colspan='2' valign='top'> </td>
  43.         </tr>
  44.     </form>
  45. </table>
  46.  
  47.  
  48.  
grabau.php:
Código: PHP
  1.  
  2.     <?
  3.     include ("config.inc.php");
  4.     $Nombre_emp=$_POST["Nombre_emp"];
  5.     $rut1 = $_POST['rut1'];
  6.     $dig = $_POST['dig'];
  7.     $rut = $rut1.'-'.$dig;
  8.     $tel = $_POST['tel'];
  9.     $dir = $_POST['dir'];
  10.     $Nom = $_POST['Nom'];
  11.     echo "Nombre_emp: ",$Nombre_emp,$Nom,$rut1,"- ",$rut,"Dir: ",$dir,"Tel; ",$tel;
  12.     mysql_query("UPDATE 'empresa' SET Rut_emp='$rut',Telefono_emp='$tel',Direccion_emp='$dir' WHERE Nombre_emp='$Nombre_emp'") or die ("NO GRABO");
  13.     ?>
  14.     <form name='add_emp' method='POST' >
  15.     <table width="800" border="1"  bordercolor="#CCCCCC"  align="center" cellpadding="10" cellspacing="0">
  16.       <tr>
  17.         <th align="center" bgcolor="#ECEEF0" class="titnoticia2" scope="col">Grabación  Empresa </th>
  18.       </tr>
  19.       <tr>
  20.         <td bordercolor="#000000"><table width="774" height="35">
  21.           <tr>
  22.             <td><div align="center">
  23.             <div align="center" class="Estilo1"> DATOS DE NUEVA EMPRESA GRABADO EXITOSAMENTE</div></td>
  24.           </tr>
  25.         </table></td>
  26.       </tr>
  27.      
  28.       <tr>
  29.         <td align='center'  bgcolor="#ECEEF0"><a href="menu_central.php">VOLVER</a></span>    <span align="right"> <a href="logout.php">SALIR</a></span></td>
  30.       </tr>
  31.     </table>
  32.     </form>
  33.  

Como dice Lair aparentemente estas intentando mandarlo por GET, pero aun asi te falta el valor en el archivo EditaEmp1.php

Tienes que Cambiar
Código: PHP
  1. <form id='EditaEmp1' name='form1' method='POST' action='grabau.php?Nombre_emp'>
  2.  

Por
Código: PHP
  1. <form id='EditaEmp1' name='form1' method='POST' action='grabau.php?Nombre_emp='.$Nombre_emp>
  2.  


y en grabau.php

Código: PHP
  1.  $Nombre_emp=$_POST["Nombre_emp"];
  2.  

Por

Código: PHP
  1.  $Nombre_emp=$_GET["Nombre_emp"];
  2.  

Otra solucion "rapida" es agregando el valor como un campo oculto (si no quieres que se vea)

EditaEmp1.php

Código: PHP
  1. <table width="800" border="1"  bordercolor="#CCCCCC"  align="center" cellpadding="10" cellspacing="0">
  2.     <form id='EditaEmp1' name='form1' method='POST' action='grabau.php'>
  3.         <tr>
  4.         <td colspan='2' bgcolor="#ECEEF0"><div align='center'>
  5.         <p><span class="Estilo1">Editar Datos de la Empresa: <? echo $Nombre_emp; ?></span><br/>
  6.        <!-- ------- Aqui se agrega el valor de $Nombre_emp en un campo oculto ------------------------ -->
  7.           <input name='Nombre_emp' value='<? echo $Nombre_emp ?>' type='hidden' />
  8.        <!-- ------ /Aqui se agrega el valor de $Nombre_emp en un campo oculto ----------------------- -->
  9.         </p>
  10.         </div></td>
  11.         </tr>
  12.         <tr><td>Rut :</td><td><span>
  13.         <input name='rut1' value='<? echo $rut1 ?>' type='text' size='10' maxlength='9' />
  14.         -
  15.         <input name='dig' value='<? echo $dig ?>' type='text' size='1' maxlength='2' />
  16.         </span>
  17.         </td></tr><tr><td>Telefono :</td><td><span>
  18.         <input name='tel' value='<? echo $tel ?>' type='text' size='10' maxlength='10' />
  19.         </span>
  20.         </td></tr><tr><td>Dirección :</td><td><span>
  21.         <input name='dir' value='<? echo $dir ?>' type='text' size='65' maxlength='150' /></span></td>
  22.         </tr>
  23.         <br/>
  24.         <tr>
  25.         <td colspan='2' align='center' bgcolor="#ECEEF0">
  26.         <input name='Guardar' type='submit' value='Guardar' /></td>
  27.         </tr>
  28.         <tr>
  29.         <td colspan='2' valign='top'> </td>
  30.         </tr>
  31.     </form>
  32. </table>
  33.  
  34.  

De esta manera entonces si en grabau.php puedes usar

Código: PHP
  1.  $Nombre_emp=$_POST["Nombre_emp"];
  2.  


Saludos
" ExIsTo y A vEcEs PiEnSo "

NOTA:
===========================================================================================================================
Este foro es para ayudar, aprender, compartir... usenlo para eso,
NO SE RESUELVEN DUDAS POR MENSAJE PRIVADO Y MENOS POR CORREO
===========================================================================================================================

Kataky

  • Miembro activo
  • **
  • Mensajes: 31
    • Ver Perfil
Re: Actualización de Datos
« Respuesta #7 en: Miércoles 10 de Junio de 2009, 03:35 »
0
Gracias Lair y F_Tanori por tratar de ayudarme pero he sido muy metodica con todas las instrucciones que me han dado y no he podido solucionar mi problema.

Sé que el problema se produce cuando grabau.php llama a la función y por alguno de esos misterios de la informática la función no recibe la variable $Nombre_emp pero si todas las demás. Me he dado cuenta que cuando tengo más de 3 llamados de script (EditaEmp.php ---> EditaEmp1.php ---> grabau.php ---> grabaru() ) éste último se marea y no quiere saber nada de la variable, en cambio al crear una nueva empresa o al eliminarla uso 1 script menos y todo funciona de maravillas.

Ahora, buscando otro camino, mi duda es ¿cómo selecciono y muestro en la misma página los datos de la empresa para modificarlos? (en VB era muy fácil) .

Esto de ser autodidacta en PHP me está estresando... :brickwall: , pero no me la puede ganar y el problema es que como me meti en un forro (la necesidad tiene cara de hereje), ya estoy contra el tiempo.

Mil gracias por su ayuda y pasciencia...

lair

  • Miembro MUY activo
  • ***
  • Mensajes: 213
  • Nacionalidad: mx
    • Ver Perfil
Re: Actualización de Datos
« Respuesta #8 en: Miércoles 10 de Junio de 2009, 18:52 »
0
Mira te voy a pasar un pequeño ejemplo en el que uso tanto get como post:

Archivo de conexion conexion.php:
Código: PHP
  1. <?php
  2.     function conexion(){
  3.         $host=mysql_connect("localhost","root","") or die("Error al conectar al servidor");
  4.    
  5.         $connect=mysql_select_db("ext") or die("Error al conectar con la base de datos");
  6.    
  7.         return $host;
  8.     }
  9. ?>
  10.  
Index (Lista los registros) index.php:
Código: PHP
  1. <html>
  2. <head>
  3.     <title>Pagina de prueba</title>
  4. </head>
  5. <body>
  6. <?php
  7.     include 'conexion.php';
  8.     $link=conexion();
  9.     echo("
  10.         <table border='1'>
  11.             <tr>
  12.                 <td>Nombre</td>
  13.                 <td>Direccion</td>
  14.                 <td colspan='2'>username</td>
  15.             </tr>
  16.     ");
  17.     $result=mysql_query("select * from usuarios");
  18.     while($reg=mysql_fetch_array($result)){
  19.         echo("
  20.             <tr>
  21.                 <td>".$reg['nombre']."</td>
  22.                 <td>".$reg['direccion']."</td>
  23.                 <td>".$reg['username']."</td>
  24.                 //aqui los datos son enviador por GET
  25.                 <td><a href='modificar.php?id=".$reg['id']."'>Modificar</a></td>
  26.             </tr>
  27.         ");
  28.     }
  29.     echo("</table>");
  30. ?>
  31. </body>
  32. </html>
  33.  
Vista de Modificacion modificar.php:
Código: PHP
  1. <?php
  2.     include 'conexion.php';
  3.     $link=conexion();
  4.  
  5.     //Por tanto aqui tenemos que recibirlos con GET
  6.     $id=$_GET['id'];
  7.  
  8.     $registro=mysql_query("select * from usuarios where id='$id'");
  9.     $reg=mysql_fetch_array($registro);
  10.     //desde este formulario los datos ahora se envian por POST
  11.     echo("
  12.         <form id form='form1' method='post' action='reg_us.php'>
  13.             ID: <input name='id' type='text' value='".$reg['id']."' readonly='true'><br>
  14.             Nombre: <input name='nom' type='text' value='".$reg['nombre']."'><br>
  15.             A. Paterno: <input name='a_p' type='text' value='".$reg['paterno']."'><br>
  16.             A. Materno: <input name='a_m' type='text' value='".$reg['materno']."'><br>
  17.             Fecha de Nacimiento: <input name='fna' type='text' value='".$reg['fnacimiento']."'><br>
  18.             Direccion: <input name='dir' type='text' value='".$reg['direccion']."'><br>
  19.             Telefono: <input name='tel' type='text' value='".$reg['telefono']."'><br>
  20.             e-Mail: <input name='mail' type='text' value='".$reg['mail']."'><br>
  21.             Nombre de Usuario: <input name='user' type='text' value='".$reg['username']."'><br>
  22.             Contraseña: <input name='pass' type='text' value='".$reg['password']."'><br>
  23.             <input type='submit' value='Modificar'>
  24.         </form>
  25.     ");
  26.    
  27. ?>
  28.  
archivo de modificacion reg_us.php:
Código: PHP
  1. <?php
  2.     include 'conexion.php';
  3.     $link=conexion();
  4.     //por lo que aqui es necesario recibirlos con POST
  5.     $id=$_POST['id'];
  6.     $nombre=$_POST['nom'];
  7.     $materno=$_POST['a_m'];
  8.     $paterno=$_POST['a_p'];
  9.     $nacimiento=$_POST['fna'];
  10.     $direc=$_POST['dir'];
  11.     $tele=$_POST['tel'];
  12.     $email=$_POST['mail'];
  13.     $usuario=$_POST['user'];
  14.     $contra=$_POST['pass'];
  15.     if(mysql_query("update usuarios set nombre='$nombre', materno='$materno', paterno='$paterno', fnacimiento='$nacimiento', direccion='$direc', telefono='$tele', mail='$email', username='$usuario', password='$contra' where id='$id'")){
  16.         echo("Registro Modificado");
  17.     }else{
  18.         echo("Error al Modificar el Registro");
  19.     }
  20. ?>
  21.  
y mi base de datos:
Código: SQL
  1. /*
  2.  
  3. MySQL Data Transfer
  4.  
  5. Source Host: localhost
  6.  
  7. Source Database: ext
  8.  
  9. Target Host: localhost
  10.  
  11. Target Database: ext
  12.  
  13. Date: 10/06/2009 11:43:27
  14.  
  15. */
  16.  
  17.  
  18.  
  19. SET FOREIGN_KEY_CHECKS=0;
  20.  
  21.  
  22.  
  23. -- ----------------------------
  24.  
  25. -- Table structure for usuarios
  26.  
  27. -- ----------------------------
  28.  
  29. DROP TABLE IF EXISTS `usuarios`;
  30.  
  31. CREATE TABLE `usuarios` (
  32.   `id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
  33.   `nombre` VARCHAR(100) NOT NULL,
  34.   `paterno` VARCHAR(100) NOT NULL,
  35.   `materno` VARCHAR(100) NOT NULL,
  36.   `fnacimiento` DATE NOT NULL,
  37.   `direccion` VARCHAR(100) NOT NULL,
  38.   `telefono` CHAR(10) DEFAULT NULL,
  39.   `mail` VARCHAR(100) DEFAULT NULL,
  40.   `username` CHAR(50) NOT NULL,
  41.   `password` CHAR(50) NOT NULL,
  42.   PRIMARY KEY  (`id`)
  43. ) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=latin1;
  44.  
  45.  
  46.  
  47. -- ----------------------------
  48.  
  49. -- Records
  50.  
  51. -- ----------------------------
  52.  
  53. INSERT INTO `usuarios` VALUES ('1', 'Lair', 'Apellido Paterno', 'Apellido Materno', '2009-06-10', '3', '3', '3', '3', '3');
  54.  
  55. INSERT INTO `usuarios` VALUES ('2', 'aaaaaaaaaaaaa', 'bbbbbbbbbbbbbbbbb', 'ccccccccccccccccccccc', '0000-00-00', 'ddddddddddddddddddddddddd', 'eeeeeeeeee', 'fffffffffffffffffffffffffffffffffffffffffffffffff', 'gggggggggggggggggggggggggggggggggggg', 'hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh');
  56.  
  57.  
espero y te sean de ayuda, suerte y ya sabes cualquier problema aqui estamos

F_Tanori

  • Moderador
  • ******
  • Mensajes: 1919
  • Nacionalidad: mx
    • Ver Perfil
Re: Actualización de Datos
« Respuesta #9 en: Jueves 11 de Junio de 2009, 02:21 »
0
Un ejemplo 'novato' para que vayas viendo ...

Código: PHP
  1. <?php
  2.  
  3.      if (isset($_POST['enviar'])){
  4.           $dato = $_POST['dato'];
  5.           echo "<h1>$dato</h1>";
  6.      }else{
  7.         echo "<form action='".$_SERVER['PHP_SELF']."' method='POST'>";
  8.         echo "<label for='dato'>Dato:</label><input name='dato' type='text' id='dato' value="" size=17>";
  9.         echo "<input type='submit' name='enviar' id='enviar' value='Grabar' >";
  10.         echo "</form>";
  11.      }
  12.  
  13. ?>
  14.  

pruebalo a ver si te sirve

Saludos
" ExIsTo y A vEcEs PiEnSo "

NOTA:
===========================================================================================================================
Este foro es para ayudar, aprender, compartir... usenlo para eso,
NO SE RESUELVEN DUDAS POR MENSAJE PRIVADO Y MENOS POR CORREO
===========================================================================================================================

Kataky

  • Miembro activo
  • **
  • Mensajes: 31
    • Ver Perfil
Re: Actualización de Datos
« Respuesta #10 en: Jueves 11 de Junio de 2009, 07:47 »
0
Mil gracias por las respuestas:

F_Tanori, si soy novata en PHP, veterana de de VB6,5, Clipper,DBase, Basic, etc..., pero como todo cambia en esta vida, hay que adaptarse al cambio y el cambio es grande, ahora voy a probar tu consejo.

Lair seguí todos tus consejos y lo primero que hice fue copiar los códigos y crear la tabla, todo funcionó perfecto pero después cambie los datos a mi famosa tabla empresa y buuuuhuu, no funcionó, creí que era la tabla, la eliminé y la cree de nuevo pero nada de nada ("parece que es la programadora") te pego todo para ver si meti las patas y nuevamente gracias, se han pasado:

Estoy tratando de pegar los códigos y al enviar me sale un mensaje de que todavía no tengo derecho a publicar enlases, si me dan un amail lo puedo enviar.