Foros del Web » Programando para Internet » PHP »

Modificar datos en PHP

Estas en el tema de Modificar datos en PHP en el foro de PHP en Foros del Web. --------------------------------------------- la base de datos 'noticias' tabla 'noticias2' id int(10) No auto_increment fecha char(20) Sí NULL titulo char(50) Sí NULL contenido char(100) Sí NULL --------------------------------------------- ...
  #1 (permalink)  
Antiguo 08/11/2003, 13:35
 
Fecha de Ingreso: noviembre-2003
Ubicación: Málaga
Mensajes: 293
Antigüedad: 20 años, 5 meses
Puntos: 1
Información Modificar datos en PHP



---------------------------------------------
la base de datos 'noticias'
tabla 'noticias2'
id int(10) No auto_increment
fecha char(20) Sí NULL
titulo char(50) Sí NULL
contenido char(100) Sí NULL
---------------------------------------------



Tengo este código que no funciona desde un formulario que se auto rrellena con la informacion de la BD

formulario.php
<?php
if (isset($g_id))

$bd=@mysql_connect("localhost", "root", "xalma");
$sel=@mysql_select_db("noticias");

$busqueda= mysql_query("SELECT fecha,titulo,contenido,id FROM noticias2 WHERE id=$g_id");
while ($row = mysql_fetch_array($busqueda))
{
echo"
<form name=myf method=post action=Editar.php >

<input name='f_fecha' type=text value='$row[fecha]'>

<input name='f_titulo' value='$row[titulo]'>

<textarea name='f_contenido' >$row[contenido]</textarea>

<input type=submit value='Modificar'>

<input name=f_id type=hidden value='$row[id]' >


</form>
";
}
?>







Editar.php

if (isset($f_id))
{

$link = mysql_connect("localhost", "root");
mysql_select_db("noticias",$db);


$sql = "UPDATE noticias2 SET fecha='$f_fecha', titulo='$f_titulo'".
"contenido='$f_contenido' WHERE id=$f_id";
$result = mysql_query($sql);
}
else{
echo "Debe especificar un 'id'.\n";
}



Necesito que pueda modificar desde al formulario uno de las campor dando como referencia la id



[meta http-equiv='Page-Exit' content='progid:DXImageTransform.Microsoft.Gradien tWipe(duration=1.0, gradientsize=0.2)' /]

Última edición por concric; 08/11/2003 a las 13:47
  #2 (permalink)  
Antiguo 08/11/2003, 13:39
Avatar de lado2mx
Colaborador
 
Fecha de Ingreso: agosto-2001
Ubicación: Veracruz
Mensajes: 3.720
Antigüedad: 22 años, 8 meses
Puntos: 9
Usaste los métodos GET o POST para tu formulario, y usaste las variables $HTTP_GET_VARS o $HTTP_POST_VARS para dar de alta tus variables al momento de subirlo a la base de datos???
  #3 (permalink)  
Antiguo 08/11/2003, 14:01
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 6 meses
Puntos: 41
Desde ya.. lo que veo es que tienes en la primera línea un if() mal escrito porque las llaves deben empezar ahí
if (isset(...)){
...
...
}

Ahora, deberías contarnos qué error te da pa saber por dónde va la cosa.

lado2mx tiene razón en lo de recoger las variables en los arrays $_POST[], etc...

Por lo menos, se sabe que tu formulario de formulario.php utiliza el método "post" para enviar las variables a Editar.php... Entonces en Editar.php debes recoger las variables así:

-en lugar de $f_id, llama a esa variable $_POST['f_id'].
-en lugar de $f_contenido, llama a esa variable $_POST['f_contenido'].
-Y así con todas las variables que vengan del formulario...

La explicación de esto la puedes encontrar en las FAQ's de este foro.

También en formulario.php estás recogiendo una variable $g_id
Si esta variable viene de otro formulario que utiliza el método "post", entonces deberías recogerla también así $_POST['g_id']

De todas maneras postea el mensaje de error que te sale.

Saludos
  #4 (permalink)  
Antiguo 08/11/2003, 14:08
 
Fecha de Ingreso: noviembre-2003
Ubicación: Málaga
Mensajes: 293
Antigüedad: 20 años, 5 meses
Puntos: 1
No da error no modifica la BD
__________________

diseño web
  #5 (permalink)  
Antiguo 08/11/2003, 14:15
 
Fecha de Ingreso: noviembre-2003
Ubicación: Málaga
Mensajes: 293
Antigüedad: 20 años, 5 meses
Puntos: 1
esta todo por si alguno no lo entide por que no me se explicar todo esta aqui http://www.xalma.net/noticias.zip y de nuevo gracias por esa respuesta tan rapida
__________________

diseño web
  #6 (permalink)  
Antiguo 08/11/2003, 14:21
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 6 meses
Puntos: 41
Bueno.. entonces debes pedirle a Mysql que te informe de los errores. Primero creo que debes quitarle la arroba a las primeras líneas.
Luego añade:
or die ("Error ".mysql_error()) en las líneas que hagan las llamadas a la bd... así:

mysql_connect("......") or die("Error al conectar con BD ".mysql_error());
mysql_select_db("......") or die("Error al seleccionar BD ".mysql_error());
mysql_query("......") or die("Error en la consulta sql ".mysql_error());
mysql_fetch_array("......") or die("Error en el fetch array ".mysql_error());

Ahora Mysql te informará de errores.

Saludos

Última edición por jpinedo; 08/11/2003 a las 14:29
  #7 (permalink)  
Antiguo 08/11/2003, 14:30
 
Fecha de Ingreso: noviembre-2003
Ubicación: Málaga
Mensajes: 293
Antigüedad: 20 años, 5 meses
Puntos: 1
Error al seleccionar BD

mysql_select_db("noticias",$db)or die("Error al seleccionar BD ".mysql_error());


¿PUEDE SER POR ESTO?

Error
Los componentes adicionales para trabajar con tablas vinculadas fueron desactivados. Para saber porqué, dé clic aquí.

Base de datos noticias ejecutándose en localhost
PMA Database ... no recibió el OK[ Documentación ]
Componentes de relación general Deshabilitado



GRACIAS DE NUEVO
__________________

diseño web

Última edición por concric; 08/11/2003 a las 14:42
  #8 (permalink)  
Antiguo 08/11/2003, 14:53
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 6 meses
Puntos: 41
No... no creo que sea eso... lo primero que tienes que ver es que tu tabla se llame exactamente igual a como la llamas... en este caso 'noticias', así, con minúsculas...

Saludos
  #9 (permalink)  
Antiguo 08/11/2003, 14:55
 
Fecha de Ingreso: noviembre-2003
Ubicación: Málaga
Mensajes: 293
Antigüedad: 20 años, 5 meses
Puntos: 1
---------------------------------------------
la base de datos 'noticias'
tabla 'noticias2'
id int(10) No auto_increment
fecha char(20) Sí NULL
titulo char(50) Sí NULL
contenido char(100) Sí NULL
---------------------------------------------
__________________

diseño web
  #10 (permalink)  
Antiguo 08/11/2003, 15:00
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 6 meses
Puntos: 41
ja, ja, ja... perdón noleí xD... pero ya sé cuál es el error:

mysql_select_db("noticias",$db);

debe ser:

mysql_select_db("noticias",$link);

Saludos
  #11 (permalink)  
Antiguo 08/11/2003, 15:29
 
Fecha de Ingreso: noviembre-2003
Ubicación: Málaga
Mensajes: 293
Antigüedad: 20 años, 5 meses
Puntos: 1
Tenias razon pero tengo otro:
Error en la consulta sql You have an error in your SQL syntax near 'contenido='----' WHERE id=' at line 1

<?
if (isset($f_id)){

$link = mysql_connect("localhost", "root", "xalma")or die("Error al conectar con BD ".mysql_error());
;
mysql_select_db ("noticias",$link)or die("Error al seleccionar BD ".mysql_error());

$sql = "UPDATE noticias2 SET fecha='$f_fecha', titulo='$f_titulo'".
"contenido='$f_contenido' WHERE
id=$f_id " ;
$result = mysql_query($sql)or die("Error en la consulta sql ".mysql_error());
}
else{
echo "Debe especificar un 'id'.\n";
}
?>



el campo id tengo 4 `1`2`3`4`

Gracias parece que no termina esto
__________________

diseño web

Última edición por concric; 08/11/2003 a las 15:31
  #12 (permalink)  
Antiguo 08/11/2003, 15:34
 
Fecha de Ingreso: noviembre-2003
Ubicación: Málaga
Mensajes: 293
Antigüedad: 20 años, 5 meses
Puntos: 1
YYYYYAAAAAAA FUNCIO0NA PARA QUE TE FIES DE LOS LIBROS SACADO DE UN LIBRO

$sql = "UPDATE noticias2 SET fecha='$f_fecha', titulo='$f_titulo', contenido='$f_contenido' WHERE id=$f_id" ;
$result = mysql_query($sql)or die("Error en la consulta sql ".mysql_error());



La cadena UPDATE esta mal en el ejemplo del libro joder porfin ya esta correcto GRACIAS A TODOS

GRACIAS jpinedo

lado2mx A TI TAMBIEN

jpinedo ERES UN CRAC te tendre en cuenta cundo sea rico. ja ja ja

__________________

diseño web

Última edición por concric; 08/11/2003 a las 15:39
  #13 (permalink)  
Antiguo 08/11/2003, 15:54
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 6 meses
Puntos: 41
ja, ja, ja... no hace falta... pero por si acaso, te tomaré la palabra... xD...

Saludos
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 03:00.