Foros del Web » Programando para Internet » PHP »

modificar registros de base de datos con php

Estas en el tema de modificar registros de base de datos con php en el foro de PHP en Foros del Web. hola encontre este codigo en un libro pero no sirve hice muchos intentos pero ya no puedo no cual es el error asi que les ...
  #1 (permalink)  
Antiguo 27/02/2009, 15:51
 
Fecha de Ingreso: diciembre-2008
Mensajes: 75
Antigüedad: 15 años, 4 meses
Puntos: 1
Pregunta modificar registros de base de datos con php

hola encontre este codigo en un libro pero no sirve hice muchos intentos pero ya no puedo no cual es el error asi que les coloco el codigo para que me den una mano aqui les va:

consulta.htm
<html>
<head>
<title>Ejemplo de PHP</title>
</head>
<body>
<H1>Ejemplo de modificar</H1>
<FORM ACTION="busca.php">
Nombre:
<INPUT TYPE="text" NAME="nombre" SIZE="20" MAXLENGTH="30">
<INPUT TYPE="submit" NAME="accion" VALUE="Buscar">
</FORM>
</body>
</html>

busca.php
<html>
<body>
<?php
include("conec.php");
$link=Conectarse();
$Sql="select * from tablacurso where nombre like '%$nombre%'";
echo $Sql;
$result=mysql_query($Sql,$link);
?>
<TABLE BORDER=1 CELLSPACING=1 CELLPADDING=1>
<TR>
<TD>&nbsp;Nombre</TD>
<TD>&nbsp;Dirección&nbsp;</TD>
<TD>&nbsp;Telefono&nbsp;</TD>
<TD>&nbsp;Email&nbsp;</TD>
<TD>&nbsp;Imagen&nbsp;</TD>
</TR>
<form name="form1" method="post" action="modifica.php">
<?php
while($row = mysql_fetch_array($result))
{
printf("<tr><td><INPUT TYPE='text' NAME='nombre' SIZE='20'
MAXLENGTH='30' value='%s'></td><td>&nbsp;<INPUT TYPE='text'
NAME='direccion' SIZE='20' MAXLENGTH='30'
value='%s'>&nbsp;</td><td>&nbsp;<INPUT TYPE='text'
NAME='telefono' SIZE='20' MAXLENGTH='30'
value='%s'>&nbsp;</td><td>&nbsp;<INPUT TYPE='text'
NAME='email' SIZE='20' MAXLENGTH='30'
value='%s'>&nbsp;</td><td>&nbsp;<INPUT TYPE='text'
NAME='imagen' SIZE='20' MAXLENGTH='30'
value='%s'>&nbsp;</td></tr>",
$row["nombre"],$row["direccion"],$row["telefono"],$row["email
"],$row["imagen"]);
}
mysql_free_result($result);
?>
</form>
</body>
</html>

modifica.php
<?php
include("conec.php");
$link=Conectarse();
$Sql="UPDATE tablacurso SET nombre='$nombre',
direccion='$direccion', email='$email', telefono='$telefono'
imagen='$imagen' WHERE nombre='$nombre'";
mysql_query($Sql,$link);
header("Location: consulta5.php");
?>

este es el original yo hice varios cambios para probar como colocar el $_POST en modifica.php para las variables tambien puse un botton en busca.php pero tampoco sirve y otros cambios pero no recuerdo todos los cambios que hice asi creo que es mejor comenzar desde el principio gracias por la ayuda
  #2 (permalink)  
Antiguo 27/02/2009, 19:25
Avatar de jenusys  
Fecha de Ingreso: diciembre-2008
Ubicación: Ahí mismo.
Mensajes: 216
Antigüedad: 15 años, 3 meses
Puntos: 11
Respuesta: modificar registros de base de datos con php

consulta.htm

<FORM ACTION="busca.php"> Le falta el método de envío:

<form action="busca.php" method="post" >

busca.php

¿Dónde estás recibiendo las variables que enviarías con el POST?

$elnombretraido = $_POST["nombre"];

No nos estás pegando el archivo conec.php para ver si allí todo anda bien para luego hacer la consulta SQL.

Creo que lo que desearías hacer es ésto:

<TD>$row["nombre"]</TD>
<TD>$row["nombre"]</TD>
<TD>$row["direccion"]</TD>
<TD>$row["telefono"]</TD>
<TD>$row["email"]</TD>

en vez de:

$row["direccion"],$row["telefono"],$row["email
"],$row["imagen"]);

OK, nos cuentas.
  #3 (permalink)  
Antiguo 27/02/2009, 22:12
 
Fecha de Ingreso: diciembre-2008
Mensajes: 75
Antigüedad: 15 años, 4 meses
Puntos: 1
Respuesta: modificar registros de base de datos con php

zorry olvide

conec.php
<?php function Conectarse()
{
if (!($link=mysql_connect("localhost","pecesama","pru ebas")))
{
exit();
}
if (!mysql_select_db("basecurso",$link))
{
exit();
}
return $link;
} ?>

en cuanto a las otras opciones ya las hice pero aun no sirve y el libro dice que sucederia esto lo voy a escrivir tal y como esta escrito:
"Modificar registros
Veremos un ejemplo de modificar registros a la base de datos, consta de tres
archivos diferentes, el primero para introducir la consulta por el campo nombre, el segundo
para realizar los cambios necesarios y el tercero para modificar la base de datos
(consulta.htm, busca.php y modifica.php)."

espero que este bien detallado cualquier duda solo pregunten gracias
  #4 (permalink)  
Antiguo 28/02/2009, 11:08
Avatar de jenusys  
Fecha de Ingreso: diciembre-2008
Ubicación: Ahí mismo.
Mensajes: 216
Antigüedad: 15 años, 3 meses
Puntos: 11
Respuesta: modificar registros de base de datos con php

OK, voy a trabajar para vos pero te voy a condicionar: Si te funciona lo que te voy a poner me tendrás que poner buen KARMA. JAJAJAJAJAJAJAJAJA.

Te voy a poner todo en un solo archivo, (para que no uses más el libro) solo tendrás que copiar y pegar éste código y espero que sea un ¡ LISTO !

El archivo se llamará ejemplo.php

No te pongo lo de la imagen porque no me quedó claro si es una imagen real que luego quieras que los usuarios suban o si es simplemente un código de imagen.

Espero te sirva:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf8">
<title>UN EJEMPLO</title>
</head>

<?php

//Nos conectamos a la base de datos
$bd_host = "localhost";
$bd_usuario = "pecesama";
$bd_password = "pruebas";
$bd_base = "basecurso";
$conexion = mysql_connect($bd_host, $bd_usuario, $bd_password);
mysql_select_db($bd_base, $conexion);

//Convertimos los datos del formulario a cadenas.
$nombre = $_POST['nombre'];
$nombredos = $_POST['nombreact'];
$dire = $_POST['dire'];
$tele = $_POST['tel'];
$ecorreo = $_POST['email'];

$resultados=mysql_query("SELECT * FROM tablacurso WHERE nombre LIKE '%{$nombre}%'", $conexion);
$actual=mysql_query("UPDATE tablacurso SET
nombre='$nombredos',
direccion='$dire',
email='$ecorreo',
telefono='$tele'
WHERE nombre='$nombredos'", $conexion);


//Mostramos el encabezado de los resultados dentro de un formulario que actualizará datos
echo"<form action=ejemplo.php method =post><table border=1 cellspacing=1 cellpadding=1>

<tr>
<td><b>NOMBRE</b></td>
<td><b>DIRECCION</b></td>
<td><b>TELEFONO</b></td>
<td><b>E-MAIL</b></td>
</tr>";

//Creamos el bucle para los resultados
while($row=mysql_fetch_array($resultados)){

echo"
<tr>
<td><input type=text name=nombreact size=20 maxlength=30 value=$row[nombre]></td>
<td><input type=text name=dire size=20 maxlength=30 value=$row[direccion]></td>
<td><input type=text name=tel size=20 maxlength=30 value=$row[telefono]></td>
<td><input type=text name=email size=20 maxlength=30 value=$row[email]></td>
<td><input type=submit name=boton value=ACTUALIZAR></td>
</tr>";

}

echo"</table></form>";

//Cerramos la conexión con MySQL
mysql_close($conexion);
?>

<body>

<small>INGRESE SUS DATOS</small><br>
<form action="ejemplo.php" method ="post">
<input type="text" name="nombre" size="20" maxlength="30">
<input type="submit" name="boton" value="ENVIAR">
</form><br>

</body>
</html>

Última edición por jenusys; 28/02/2009 a las 12:37
  #5 (permalink)  
Antiguo 28/02/2009, 14:57
 
Fecha de Ingreso: diciembre-2008
Mensajes: 75
Antigüedad: 15 años, 4 meses
Puntos: 1
Respuesta: modificar registros de base de datos con php

ok listo por fin funciona aunque todavia no lo he entendido muy bien pero lo chequeare bien para entenderlo lo no entiendo nada es eso de karma ni siquiera se el significado de esa palabra a lo mejor te refieres a dar puntos si es asi no se como se dan puntos si es que me entero que en esta pagina dan puntos por las respuestas te dare varios puntos gracias brother
  #6 (permalink)  
Antiguo 28/02/2009, 15:00
Avatar de jenusys  
Fecha de Ingreso: diciembre-2008
Ubicación: Ahí mismo.
Mensajes: 216
Antigüedad: 15 años, 3 meses
Puntos: 11
Respuesta: modificar registros de base de datos con php

Noooo, era broma, lo del Karma es voluntario y si no sabes como no te preocupes... me alegra que te haya servido mi ayuda.

¡ Enjoy !
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:49.