Foros del Web » Programando para Internet » PHP »

Modificar datos de MySql

Estas en el tema de Modificar datos de MySql en el foro de PHP en Foros del Web. Hola gente! soy nueva en el foro...a ver si alguien me puede dar una mano, porq ya veo cruzado a estas horas... tengo un código ...
  #1 (permalink)  
Antiguo 04/10/2008, 09:50
Avatar de paumiramon  
Fecha de Ingreso: octubre-2008
Mensajes: 2
Antigüedad: 15 años, 6 meses
Puntos: 0
Modificar datos de MySql

Hola gente!
soy nueva en el foro...a ver si alguien me puede dar una mano, porq ya veo cruzado a estas horas...
tengo un código para poder, mediante un formulario, modificar los datos de mi base de datos. El problema, es que no me muestra absolutamente nada, la página se queda en blanco, cuando en realidad tendria q mostrar el form.
Les pego el codigo si?
GRaciassssssssssssssssssssssssss


<?
// datos de configuracion
$ip = ‘localhost’;
$usuario = ‘usuario’;
$password = ‘password’;
$db_name = ‘baseDeDatos’;
// conectamos con la db
$conn = mysql_pconnect($ip,$usuario,$password) or die();
// seleccionamos la base de datos
$huboerror = mysql_select_db($db_name,$conn) or die();


// si se envia el formulario de edicion
if ( !empty($_POST['submit']) ) {
$query = “UPDATE `noticias` set titulo = ‘{$_POST['titulo']}’, set cuerpo = ‘{$_POST['cuerpo']}’, set estado = ‘{$_POST['estado']}’ WHERE idNoticia = {$_POST['idNoticia']} LIMIT 1″;
$response = mysql_query($query, $conn);
}


// si tenemos id de noticia
if ( !empty($_GET['idNoticia']) ) {

// traemos la noticia
$query = “SELECT idNoticia,titulo,cuerpo,estado FROM `noticias` WHERE idNoticia = {$_GET['idNoticia']} limit 1″;
$response = mysql_query($query, $conn);
$noticia = mysql_fetch_assoc($response);

}

?>
<html>
<head>
<title>Formulario de Edición de Noticias</title>
</head>
<body>
<h1>Agregar Nueva Noticia</h1>
<form action=”editar-noticias.php” method=”post”>
<label for=”titulo”>Titulo</label><br />
<input id=”titulo” name=”titulo” value=”<? echo $noticia['titulo']; ?> ” type=”text” /><br /><br />
<label for=”cuerpo”>Cuerpo</label><br />
<textarea id=”cuerpo” name=”cuerpo” rows=”5″ cols=”50″><? echo $noticia['cuerpo']; ?></textarea><br /><br />
<label for=”estado”>Estado</label>
<select id=”estado” name=”estado”>
<option value=”publicado” <? if ( $noticia['estado'] == ‘publicado’ ) echo ’selected=”selected”‘; ?>>Publicado</option>
<option value=”borrado” <? if ( $noticia['estado'] == ‘borrado’ ) echo ’selected=”selected”‘; ?>>Borrado</option>
</select><br /><br />
<button type=”submit” name=”submit” value=”1″>Editar Noticia</button>
<input name=”idNoticia” value=”<? echo $noticia['idNoticia']; ?>” type=”hidden” />
</form>
</body>
</html>
  #2 (permalink)  
Antiguo 04/10/2008, 10:07
Avatar de Carlojas  
Fecha de Ingreso: junio-2007
Ubicación: Shikasta
Mensajes: 1.272
Antigüedad: 16 años, 10 meses
Puntos: 49
Respuesta: Modificar datos de MySql

Que tal paumiramon, primero que todo bienvenida al foro, verifica que no tengas errores en las consultas aunque se detectan varios a simple vista, prueba así tu código
Código PHP:
// si se envia el formulario de edicion
if (isset($_POST['submit'])) {
$titulo $_POST['titulo'];
$cuerpo $_POST['cuerpo'];
$estado $_POST['estado'];
$idNoticia $_POST['idNoticia'];
$query "UPDATE `noticias` set titulo = '$titulo',  cuerpo = '$cuerpo', estado = '$estado' WHERE idNoticia = $idNoticia LIMIT 1";
$response mysql_query($query$conn) or die("Error en query $query:" .mysql_error() );
}

// si tenemos id de noticia
if (!empty($_GET['idNoticia']) ) {
$idNoticia $_GET['idNoticia'];
// traemos la noticia
$query_I "SELECT idNoticia,titulo,cuerpo,estado FROM `noticias` WHERE idNoticia = $idNoticia limit 1";
$response mysql_query($query$conn)or die("Error en query $query_I:" .mysql_error() );;
$noticia mysql_fetch_assoc($response);


Ahora verifica bien el valor de $_GET['idNoticia'], que te este llegando correctamente
Saludos.
__________________
"SELECT * FROM Mujeres WHERE situacion NOT IN ('CASADAS','CON HIJOS','ATORMENTADAS','CUASI-ENNOVIADAS') AND personalidad <> 'INTENSA'"

Última edición por Carlojas; 04/10/2008 a las 14:13
  #3 (permalink)  
Antiguo 04/10/2008, 10:58
Avatar de paumiramon  
Fecha de Ingreso: octubre-2008
Mensajes: 2
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: Modificar datos de MySql

Hola Carlojas!
Gracias por responder tan pronto... la verdad q estoy un poco perdida...jaja

Mira, con lo que me pasate hice un par de modificaciones para simplificar el codigo y aclararme un poco... Igualmente, me sigue mostrando una hermosa pantalla en blanco...es un poco desesperante...jajaja

A ver si me puedes dar una manita...

Gracias de nuevo!


______________________________________________-

<?
// datos de configuracion
$ip = ‘localhost’;
$usuario = ‘usuario’;
$password = ‘password’;
$db_name = ‘db’;
// conectamos con la db
$conn = mysql_pconnect($ip,$usuario,$password) or die();
// seleccionamos la base de datos
$huboerror = mysql_select_db($db_name,$conn) or die();

// si se envia el formulario de edicion
if (isset($_POST['submit'])) {
$nombres = $_POST['nombres'];
$id = $_POST['id'];
$query = "UPDATE `loccontacta` set nombres = '$nombres' WHERE id = $id LIMIT 1";
$response = mysql_query($query, $conn) or die("Error en query $query:" .mysql_error() );
}

// si tenemos id de noticia
if (!empty($_GET['id']) ) {
$id = $_GET['id'];

// traemos la noticia
$query_I = "SELECT id,nombres FROM `loccontacta` WHERE id = $id limit 1";
$response = mysql_query($query, $conn)or die("Error en query $query_I:" .mysql_error() );;
$noticia = mysql_fetch_assoc($response);

}


?>
<html>
<head>
<title>Formulario de Edición de Noticias</title>
</head>
<body>
<h1>Agregar Nueva Noticia</h1>
<form action=”modificar.php” method=”post”>
<label for=”nombres”>nombres</label><br />
<input id=”nombres” name=”nombres” value=”<? echo $noticia['nombres']; ?> ” type=”text” /><br />
<label for=”apellidos”></label>
<br />
<button type=”submit” name=”submit” value=”1″>Editar Noticia</button>
<input name=”id” value=”<? echo $noticia['id']; ?>” type=”hidden” />
</form>
</body>
</html>
  #4 (permalink)  
Antiguo 04/10/2008, 14:22
Avatar de Carlojas  
Fecha de Ingreso: junio-2007
Ubicación: Shikasta
Mensajes: 1.272
Antigüedad: 16 años, 10 meses
Puntos: 49
Respuesta: Modificar datos de MySql

Bueno por partes, primero el código que te listas el ID y Nombres
Código PHP:
<?php 
// si tenemos id de noticia
if(!empty($_GET['id'])) { 
$id $_GET['id']; 
// traemos la noticia 
$query_I "SELECT id,nombres FROM `loccontacta` WHERE id = $id limit 1"
$response mysql_query($query$conn)or die("Error en query $query_I:" .mysql_error() );
$noticia mysql_fetch_assoc($response); } 
?>
<html>
<head>
<title>Formulario de Edición de Noticias</title>
</head>
<body>
<h1>Agregar Nueva Noticia</h1>
<form action="modificar.php" method="post">
<label for="nombres">nombres</label><br />
<input id="nombres" name="nombres" value="<?php echo $noticia['nombres'];?>"type="text" /><br />
<label for="apellidos"></label>
<br />
<button type="submit" name="submit" value="1">Editar Noticia</button>
<input name="id" value="<?php echo $noticia['id'];?>" type="hidden" />
</form>
</body>
</html>
Sigo con la misma inquietud de donde obtienes ese ID? con el cual haces la consulta? $_GET['id'], segura que esa variable esta tomando algun valor? verifica eso, ahora te arroja algún error? ubica estas dos líneas al principio de tu script
Código PHP:
ini_set('error_reporting'E_ALL);
ini_set('display_errors'true); 

Saludos.
__________________
"SELECT * FROM Mujeres WHERE situacion NOT IN ('CASADAS','CON HIJOS','ATORMENTADAS','CUASI-ENNOVIADAS') AND personalidad <> 'INTENSA'"

Última edición por Carlojas; 04/10/2008 a las 15:33
  #5 (permalink)  
Antiguo 25/12/2008, 15:44
Avatar de airos  
Fecha de Ingreso: mayo-2008
Mensajes: 68
Antigüedad: 15 años, 11 meses
Puntos: 3
Pregunta Modificar datos de MySql

Hola! yo estoy utilizando el mismo código, que lo encontre en un taller de php, pero hasta ahora da muchos errores y el creador no responde los mensajes xD

En fin, yo estoy empleando el código original y sale así:
Código PHP:
<?
// datos de configuracion
$ip "localhost";
$usuario "user";
$password "pass";
$db_name "nombre_DB";
// conectamos con la db
$conn mysql_pconnect($ip,$usuario,$password) or die(mysql_error());
// seleccionamos la base de datos
$huboerror mysql_select_db($db_name,$conn) or die(mysql_error());


// si se envia el formulario de edicion
if ( !empty($_POST['submit']) ) {
$query "UPDATE noticias set titulo = '{$_POST['titulo']}', set cuerpo = '{$_POST['cuerpo']}', set estado = '{$_POST['estado']}' WHERE idNoticia = {$_POST['idNoticia']} LIMIT 1";
$response mysql_query($query$conn);
}

// si tenemos id de noticia
if ( !empty($_GET['idNoticia']) ) {
// traemos la noticia
$query "SELECT idNoticia,titulo,cuerpo,estado FROM noticias WHERE idNoticia = {$_GET['idNoticia']} limit 1";

$noticia mysql_fetch_assoc($response);
}

?>
<html>
<head>
<title>Formulario de Edición de Noticias</title>
</head>
<body>
<h1>Agregar Nueva Noticia</h1>
<form action="editar-noticias.php" method="post">
<label for="titulo">Titulo</label><br />
<input id="titulo" name="titulo" value="<? echo $noticia['titulo']; ?> " type="text" /><br /><br />
<label for="cuerpo">Cuerpo</label><br />
<textarea id="cuerpo" name="cuerpo" rows="5" cols="50"><? echo $noticia['cuerpo']; ?></textarea><br /><br />
<label for="estado">Estado</label>
<select id="estado" name="estado">
<option value="publicado" <? if ( $noticia['estado'] == 'publicado' ) echo 'selected="selected"'?>>Publicado</option>
<option value="borrado" <? if ( $noticia['estado'] == 'borrado' ) echo 'selected="selected"'?>>Borrado</option>
</select><br /><br />
<button type="submit" name="submit" value="1">Editar Noticia</button>
<input name="idNoticia" value="<? echo $noticia['idNoticia']; ?>" type="hidden" />
</form>
</body>
Lo que hice fue quitar las comillas de los siguientes datos:
"SELECT idNoticia,titulo,cuerpo,estado FROM noticias WHERE idNoticia"

"UPDATE noticias set titulo"


Según tengo entendido va sin las comillas. Al probarlo me dice lo siguiente:

"Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in D:\AppServ\www\cursophp\editar-noticias.php on line 24"

No entendi el error, en teoría si escribo: www.misitio.com/editar-noticias.php?idNoticias=2 me tiene que tomar la noticia... para que la pueda editar, pero nada :s

muestra el error y abajo el formulario en blanco, alguna idea?
**Aquí les dejo la web del autor:

w w w.elwebmaster.com/editorial/taller-de-php-actualizar-y-borrar-registros-2

(no quiero hacer spam, pero es por si se puede aclarar mi duda).

Gracias.
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 00:46.