+ Responder Tema
Página 1 de 2 12 ÚltimoÚltimo
Resultados 1 al 15 de 28

Tema: ¿Update mediante form?

  1. #1
    Esto empieza a ser un vicio... Habitante gjulian Está en el buen camino Avatar de gjulian
    Fecha de Ingreso
    29 ene, 09
    Ubicación
    Sevilla
    Mensajes
    457
    Poder de Reputación
    7

    ¿Update mediante form?

    Hola, como esto es otro tema, he creido conveniendo plantearlo así.
    Antes de volverme loco haciendo pruebas y experimentos, hago esta pregunta: ¿Sería posible crear una pagina de update para cualquier campo de la db mediante un form que solo envie los imput rellenos?
    Si es que si, me gustaría recibir una pequeña explicacion para intentar desarrollarlo yo, caso contrario, tambien.
    Gracias
    lo mejor de caerse al tropezar, es volverse a levantar.
    http://alquilabusevilla.freetzi.com
    http://misevillaguapa.freetzi.com

  2. #2
    Esto empieza a ser un vicio... Habitante cesar_ed will become famous soon enough Avatar de cesar_ed
    Fecha de Ingreso
    11 feb, 10
    Mensajes
    563
    Poder de Reputación
    6
    Claro que si se puede , te refieres a ingresar texto en un input y luego almacenarlo en la db? eso es muy sencillo, solo tienes que aprender a utilizar las funciones mysql , no todas y listo.
    Es facil programar "Solo interesate en aprender"

  3. #3
    Esto empieza a ser un vicio... Habitante gjulian Está en el buen camino Avatar de gjulian
    Fecha de Ingreso
    29 ene, 09
    Ubicación
    Sevilla
    Mensajes
    457
    Poder de Reputación
    7
    A ver, yo se que se puede introducir texto a en una db mediante un form, de hecho es así como lo estoy haciendo. Pero si yo quiero solamente actualizar un solo dato erroneo de mi db y tengo cuatro imput, ejem.:(nombre, direccion, provincia, pais), y hoy rectifico (nombre) y mañana (pais), ¿necesito una pagina de envio para cada campo o en una sola pueden estar todos los campos y solo se actualiza el relleno?
    ¿No se si me explico?
    lo mejor de caerse al tropezar, es volverse a levantar.
    http://alquilabusevilla.freetzi.com
    http://misevillaguapa.freetzi.com

  4. #4
    Esto empieza a ser un vicio... Habitante cesar_ed will become famous soon enough Avatar de cesar_ed
    Fecha de Ingreso
    11 feb, 10
    Mensajes
    563
    Poder de Reputación
    6
    Entonces lo que quieres es lo que me habias comentado en otro tema? es facil , si quieres editar solo un campo , puedes editar solo un campo , y si quieres todos puedes editar todos, mediante un form , utilizando la funcion UPDATE de mysql, quedando un ejemplo asi

    editar.php

    Código:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252" />
    <title>Documento sin t&iacute;tulo</title>
    </head>
    
    <body>
    <h1>Editar el numero de papas que comes al dia</h1>
    <?php
     
       $conectar = mysql_connect ("SERVIDOR","USUARIO","CLAVE") or die ("Error");
       $seleccionar = mysql_select_db ("BD");
       
       $tabla = mysql_query ("SELECT * FROM papas");
       ?>
    <form action="editando.php" method="post">
    <table border="0px">
    <tr>
    <td>Bolsas de papas:</td>
    <td><input type="text" name="papas" value="
    <?
    if(mysql_num_rows($tabla))
    {
    if ($papas = mysql_fetch_array($tabla))
    {
    echo $papas['numero'];
     }
    }
    ?>
    " /></td>
    </td>
    </tr>
    <tr>
    <td></td>
    <td><input type="submit" value="Editar" /></td>
    </tr>
    </table>
    </form>
    </body>
    </html>
    Y editando.php

    Código:
    <?php
    
     $editado = $_POST['papas'];
     
     
      $conectar = mysql_connect ("SERVIDOR","USUARIO","CLAVE") or die ("Error");
       $seleccionar = mysql_select_db ("BD");
       /* Aqui actualizamos la bd seria asi
       $actualizar = mysql_query("UPDATE tabla SET campo = 'actualizacion' ") or die (Error);
        se pone una coma si son mas campos a editar:
    	$actualizar = mysql_query("UPDATE tabla SET campo = 'actualizacion', campo2 = '' , campo 3.....etc ") or die (Error);
    	En el ejemplo seria asi:
       */
        $actualizar = mysql_query("UPDATE papas SET numero = '$editado' ") or die (Error);
    	
    	echo "
    
    Tu campo se ha editado correctamente</p>";
    	
    	?>
    Espero y te ayude :)
    Es facil programar "Solo interesate en aprender"

  5. #5
    Esto empieza a ser un vicio... Habitante gjulian Está en el buen camino Avatar de gjulian
    Fecha de Ingreso
    29 ene, 09
    Ubicación
    Sevilla
    Mensajes
    457
    Poder de Reputación
    7
    Hola cesar, disculpa mi tardanza en contestar pero el 'curro' me absorbe mucho tiempo.
    No, yo no quiero actualizar campos a traves del code de la pagina de envio del form; lo que quiero es crear un form que ingrese los valores de los campos a actualizar en la pagina de envio, ¿no se si me explico? y ¿si se puede? Todavia no doy para eso, ni para mucho menos (¿a quien quiero engañar?).
    lo mejor de caerse al tropezar, es volverse a levantar.
    http://alquilabusevilla.freetzi.com
    http://misevillaguapa.freetzi.com

  6. #6
    Esto empieza a ser un vicio... Habitante cesar_ed will become famous soon enough Avatar de cesar_ed
    Fecha de Ingreso
    11 feb, 10
    Mensajes
    563
    Poder de Reputación
    6
    oh creo que ya te estoy entendiendo, lo que quieres hacer es que mediante de un formulario selecciones los campos a actualizar, por ejemplo mediante un select name de html , que ponga:

    Selecciona la fila que quieras actualizar y aparezca una lista con todos las filas insertadas

    es asi o me volvi a equivocar?
    Es facil programar "Solo interesate en aprender"

  7. #7
    Esto empieza a ser un vicio... Habitante gjulian Está en el buen camino Avatar de gjulian
    Fecha de Ingreso
    29 ene, 09
    Ubicación
    Sevilla
    Mensajes
    457
    Poder de Reputación
    7
    Cita Iniciado por cesar_ed
    Selecciona la fila que quieras actualizar y aparezca una lista con todos las filas insertadas
    Y una vez seleccionada poder actualizar cualquier campo de cualquiera fila.
    Ejem.: tenemos una bd con "nombre, ciudad, pais". Digamos que tengo a "Juan, Madrid, España" y Juan se muda a Barcelona.
    Lo que quiero es poder actualizar el campo "Madrid" de "Juan" con un form que se comunique con la pagina de 'envio.php' y esta con la bd. cambiando ella solita los datos sin que yo tenga que actuar sobre el code de la pagina de 'envio.php'.
    lo mejor de caerse al tropezar, es volverse a levantar.
    http://alquilabusevilla.freetzi.com
    http://misevillaguapa.freetzi.com

  8. #8
    Esto empieza a ser un vicio... Habitante cesar_ed will become famous soon enough Avatar de cesar_ed
    Fecha de Ingreso
    11 feb, 10
    Mensajes
    563
    Poder de Reputación
    6
    entonces puedes hacer algo asi


    seleccionar.php

    Código:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252" />
    <title>Documento sin t&iacute;tulo</title>
    </head>
    
    <body>
    <form action="editando.php" method="get">
    <table border="0px">
    <tr>
    <?php
    
      $conectar = mysql_connect("TU SERVIDOR","TU USUARIO", "TU CLAVE");
      $bd = mysql_select_db ("TU BASE DE DATOS");
       
         $seleccionar = mysql_query ("SELECT * FROM tutabla ") or die ("Ha ocurrido un error al conectar ala bd");
    	 $contando_registros = mysql_num_rows($seleccionar);
    	 
    	 if($contando_registros <= 0)
    	 {
    	   echo "<td>No se han encontrado registros en la tabla</td></tr></table></form>";
    	   }
    	   else {
    	    echo '<td>Selecciona la fila que deseas editar</td>';
    		echo '<td>';
    	    echo '<select name="id">';
    	   if($contando_registros)
    	   {
    	   while ($registros = mysql_fetch_array($seleccionar))
    	   {
    	   echo '<option value="'.$registros['TU ID DE LA TABLA'].'">Fila '.$registros['TU ID DE LA TABLA'].' </option> ';
    	   }
    	  }
    	  echo '</select>';
    	  
    	  echo '</td>';
    	  echo '</tr>';
    	  echo '<tr>';
    	  echo '<td></td>';
    	  echo '<td><input type="submit" value="Editar"></td>';
    	  echo '</tr>';
    	 }
    	 ?>
     
      </table>
      </form>
    	   
    </body>
    </html>
    Y una de enviar php , que tomando en cuenta el metodo GET puedes obtener el id de la url, ya que con el codigo que te mostre obtiene el id de tu tabla, ahora solo tienes que seleccionar los campos que quieres editar de la fila seleccionada, fue facil no?

    suerte :D
    Es facil programar "Solo interesate en aprender"

  9. #9
    Esto empieza a ser un vicio... Habitante nosabernada will become famous soon enough Avatar de nosabernada
    Fecha de Ingreso
    02 ago, 08
    Ubicación
    Velar por CCTW
    Mensajes
    1,418
    Poder de Reputación
    13
    Cita Iniciado por cesar_ed
    Entonces lo que quieres es lo que me habias comentado en otro tema? es facil , si quieres editar solo un campo , puedes editar solo un campo , y si quieres todos puedes editar todos, mediante un form , utilizando la funcion UPDATE de mysql, quedando un ejemplo asi

    editar.php

    Código:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252" />
    <title>Documento sin t&iacute;tulo</title>
    </head>
    
    <body>
    <h1>Editar el numero de papas que comes al dia</h1>
    <?php
     
       $conectar = mysql_connect ("SERVIDOR","USUARIO","CLAVE") or die ("Error");
       $seleccionar = mysql_select_db ("BD");
       
       $tabla = mysql_query ("SELECT * FROM papas");
       ?>
    <form action="editando.php" method="post">
    <table border="0px">
    <tr>
    <td>Bolsas de papas:</td>
    <td><input type="text" name="papas" value="
    <?
    if(mysql_num_rows($tabla))
    {
    if ($papas = mysql_fetch_array($tabla))
    {
    echo $papas['numero'];
     }
    }
    ?>
    " /></td>
    </td>
    </tr>
    <tr>
    <td></td>
    <td><input type="submit" value="Editar" /></td>
    </tr>
    </table>
    </form>
    </body>
    </html>
    Y editando.php

    Código:
    <?php
    
     $editado = $_POST['papas'];
     
     
      $conectar = mysql_connect ("SERVIDOR","USUARIO","CLAVE") or die ("Error");
       $seleccionar = mysql_select_db ("BD");
       /* Aqui actualizamos la bd seria asi
       $actualizar = mysql_query("UPDATE tabla SET campo = 'actualizacion' ") or die (Error);
        se pone una coma si son mas campos a editar:
    	$actualizar = mysql_query("UPDATE tabla SET campo = 'actualizacion', campo2 = '' , campo 3.....etc ") or die (Error);
    	En el ejemplo seria asi:
       */
        $actualizar = mysql_query("UPDATE papas SET numero = '$editado' ") or die (Error);
    	
    	echo "
    
    Tu campo se ha editado correctamente</p>";
    	
    	?>
    Espero y te ayude :)
    buenas,


    cesar, me da a mi que sabes algo de php, solo una anécdota, usas varias paginas de php cuando perfectamente puedes incluir todo en una hoja.

    Ejemplo de lo que he citado en una hoja:

    editar.php
    Código:
     $parte=$_GET['parte'];
       if ($parte=="1")
       {
       $conectar = mysql_connect ("SERVIDOR","USUARIO","CLAVE") or die ("Error");
       $seleccionar = mysql_select_db ("BD");
       
       $tabla = mysql_query ("SELECT * FROM papas");
       ?>
    <form action="editar.php?tipo=1" method="post">
    <table border="0px">
    <tr>
    <td>Bolsas de papas:</td>
    <td><input type="text" name="papas" value="
    <?
    if(mysql_num_rows($tabla))
    {
    if ($papas = mysql_fetch_array($tabla))
    {
    echo $papas['numero'];
     }
    }
    }
       elseif ($tipo=="2")
       {
    $editado = $_POST['papas'];
     
     
      $conectar = mysql_connect ("SERVIDOR","USUARIO","CLAVE") or die ("Error");
       $seleccionar = mysql_select_db ("BD");
       /* Aqui actualizamos la bd seria asi
       $actualizar = mysql_query("UPDATE tabla SET campo = 'actualizacion' ") or die (Error);
        se pone una coma si son mas campos a editar:
       $actualizar = mysql_query("UPDATE tabla SET campo = 'actualizacion', campo2 = '' , campo 3.....etc ") or die (Error);
       En el ejemplo seria asi:
       */
        $actualizar = mysql_query("UPDATE papas SET numero = '$editado' ") or die (Error);
       
       echo "
    
    Tu campo se ha editado correctamente</p>"; 
    
    }
       else{
    }
    }

  10. #10
    Esto empieza a ser un vicio... Habitante gjulian Está en el buen camino Avatar de gjulian
    Fecha de Ingreso
    29 ene, 09
    Ubicación
    Sevilla
    Mensajes
    457
    Poder de Reputación
    7
    Gracias cesar, lo provaré y te diré como me va.
    /*Me he comprado un librito ("Creacion de un portal con PHP y MySQL , editorial Ra - Ma"), para los ratos libres en el curro. Pero, la verdad es que me estoy liando mas que las sandalias de un romano*/
    En fin paciencia, que dicen que es la madre de todas ciencias.
    Por cierto ¿porque se usa el metodo GET y no POST en este code? ¿No es mas inseguro?
    Gracias
    lo mejor de caerse al tropezar, es volverse a levantar.
    http://alquilabusevilla.freetzi.com
    http://misevillaguapa.freetzi.com

  11. #11
    Esto empieza a ser un vicio... Habitante cesar_ed will become famous soon enough Avatar de cesar_ed
    Fecha de Ingreso
    11 feb, 10
    Mensajes
    563
    Poder de Reputación
    6
    Cita Iniciado por nosabernada
    Cita Iniciado por cesar_ed
    Entonces lo que quieres es lo que me habias comentado en otro tema? es facil , si quieres editar solo un campo , puedes editar solo un campo , y si quieres todos puedes editar todos, mediante un form , utilizando la funcion UPDATE de mysql, quedando un ejemplo asi

    editar.php

    Código:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252" />
    <title>Documento sin t&iacute;tulo</title>
    </head>
    
    <body>
    <h1>Editar el numero de papas que comes al dia</h1>
    <?php
     
       $conectar = mysql_connect ("SERVIDOR","USUARIO","CLAVE") or die ("Error");
       $seleccionar = mysql_select_db ("BD");
       
       $tabla = mysql_query ("SELECT * FROM papas");
       ?>
    <form action="editando.php" method="post">
    <table border="0px">
    <tr>
    <td>Bolsas de papas:</td>
    <td><input type="text" name="papas" value="
    <?
    if(mysql_num_rows($tabla))
    {
    if ($papas = mysql_fetch_array($tabla))
    {
    echo $papas['numero'];
     }
    }
    ?>
    " /></td>
    </td>
    </tr>
    <tr>
    <td></td>
    <td><input type="submit" value="Editar" /></td>
    </tr>
    </table>
    </form>
    </body>
    </html>
    Y editando.php

    Código:
    <?php
    
     $editado = $_POST['papas'];
     
     
      $conectar = mysql_connect ("SERVIDOR","USUARIO","CLAVE") or die ("Error");
       $seleccionar = mysql_select_db ("BD");
       /* Aqui actualizamos la bd seria asi
       $actualizar = mysql_query("UPDATE tabla SET campo = 'actualizacion' ") or die (Error);
        se pone una coma si son mas campos a editar:
    	$actualizar = mysql_query("UPDATE tabla SET campo = 'actualizacion', campo2 = '' , campo 3.....etc ") or die (Error);
    	En el ejemplo seria asi:
       */
        $actualizar = mysql_query("UPDATE papas SET numero = '$editado' ") or die (Error);
    	
    	echo "
    
    Tu campo se ha editado correctamente</p>";
    	
    	?>
    Espero y te ayude :)
    buenas,


    cesar, me da a mi que sabes algo de php, solo una anécdota, usas varias paginas de php cuando perfectamente puedes incluir todo en una hoja.

    Ejemplo de lo que he citado en una hoja:

    editar.php
    Código:
     $parte=$_GET['parte'];
       if ($parte=="1")
       {
       $conectar = mysql_connect ("SERVIDOR","USUARIO","CLAVE") or die ("Error");
       $seleccionar = mysql_select_db ("BD");
       
       $tabla = mysql_query ("SELECT * FROM papas");
       ?>
    <form action="editar.php?tipo=1" method="post">
    <table border="0px">
    <tr>
    <td>Bolsas de papas:</td>
    <td><input type="text" name="papas" value="
    <?
    if(mysql_num_rows($tabla))
    {
    if ($papas = mysql_fetch_array($tabla))
    {
    echo $papas['numero'];
     }
    }
    }
       elseif ($tipo=="2")
       {
    $editado = $_POST['papas'];
     
     
      $conectar = mysql_connect ("SERVIDOR","USUARIO","CLAVE") or die ("Error");
       $seleccionar = mysql_select_db ("BD");
       /* Aqui actualizamos la bd seria asi
       $actualizar = mysql_query("UPDATE tabla SET campo = 'actualizacion' ") or die (Error);
        se pone una coma si son mas campos a editar:
       $actualizar = mysql_query("UPDATE tabla SET campo = 'actualizacion', campo2 = '' , campo 3.....etc ") or die (Error);
       En el ejemplo seria asi:
       */
        $actualizar = mysql_query("UPDATE papas SET numero = '$editado' ") or die (Error);
       
       echo "
    
    Tu campo se ha editado correctamente</p>"; 
    
    }
       else{
    }
    }
    Es para mayor seguridad en el archivo

    saludos nosaber
    Es facil programar "Solo interesate en aprender"

  12. #12
    Esto empieza a ser un vicio... Habitante cesar_ed will become famous soon enough Avatar de cesar_ed
    Fecha de Ingreso
    11 feb, 10
    Mensajes
    563
    Poder de Reputación
    6
    Cita Iniciado por gjulian
    Gracias cesar, lo provaré y te diré como me va.
    /*Me he comprado un librito ("Creacion de un portal con PHP y MySQL , editorial Ra - Ma"), para los ratos libres en el curro. Pero, la verdad es que me estoy liando mas que las sandalias de un romano*/
    En fin paciencia, que dicen que es la madre de todas ciencias.
    Por cierto ¿porque se usa el metodo GET y no POST en este code? ¿No es mas inseguro?
    Gracias
    TIenes razon , es mas seguro post , pero para llenar datos de formularios importantes como : email , usuario, contraseña entre otras opciones

    EL metodo GET se utiliza para obtener variables en la url y solo queremos obtener el id de la fila , no creo que haya algo inseguro en eso.

    Suerte
    Es facil programar "Solo interesate en aprender"

  13. #13
    Esto empieza a ser un vicio... Habitante nosabernada will become famous soon enough Avatar de nosabernada
    Fecha de Ingreso
    02 ago, 08
    Ubicación
    Velar por CCTW
    Mensajes
    1,418
    Poder de Reputación
    13
    Es para mayor seguridad en el archivo

    saludos nosaber

    Aham, por supuesto, pero, la seguridad ya la puedes dar de otra manera, no?


    Un saludo.

  14. #14
    Esto empieza a ser un vicio... Habitante cesar_ed will become famous soon enough Avatar de cesar_ed
    Fecha de Ingreso
    11 feb, 10
    Mensajes
    563
    Poder de Reputación
    6
    Bueno en concreto no es para dar seguridad, si no para que haya menos problemas con la pagina y por supuesto para que te compiques menos cuando te vas adentrando en esto del php como lo es qjulian, trato de ponerlo lo mas facil de entender posible , ya que en el mismo archivo php serian mas instrucciones que podrian confundir al interesado.

    un saludo :)
    Es facil programar "Solo interesate en aprender"

  15. #15
    Esto empieza a ser un vicio... Habitante nosabernada will become famous soon enough Avatar de nosabernada
    Fecha de Ingreso
    02 ago, 08
    Ubicación
    Velar por CCTW
    Mensajes
    1,418
    Poder de Reputación
    13
    En efecto querido amigo, pero

    en php, después de las variables, lo que te enseñan son las condiciones, no?

    Un saludo.

+ Responder Tema

Temas Similares

  1. datos del form en un div
    Por gjulian en el foro Formularios
    Respuestas: 0
    Último Mensaje: 03/09/2010, 07:41
  2. ¿se pude hacer UPDATE solo a ciertos registros?
    Por gjulian en el foro Php Bases de Datos y MySQL (Nuevo!)
    Respuestas: 0
    Último Mensaje: 30/07/2010, 08:36

Permisos de Publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes