ayuda con codigo php

Iniciado por Dannysoft, 20 Agosto 2012, 07:45 AM

0 Miembros y 1 Visitante están viendo este tema.

Dannysoft

saludos foro, estoy programando un sistema de noticias en php con base de datos mysql, realize tres paginas para ver, modificar y eliminar las noticias:

mi pagina de borrar funciona muy bien:
<?php
$codigo
=$_GET['id'];
include(
'_conec.php');
$sql="delete from datos where alucod=$codigo";
$exito=mysql_query($sql);
if (
$exito==1){
header('location: resultados.php');
}else{
echo 
"Error al borrar registro";
}
?>


pero tengo problema con mi pagina para actualizar, no funciona y la verdad no se cual sea el error que cometo al programarlo:
<?php
include('_conec.php');
$b1=$_POST['paterno'];
$b2=$_POST['materno'];
$b3=$_POST['nombre'];
$b4=$_POST['direccion'];
$b5=$_POST['telefono'];
$b6=$_POST['nacimiento'];
$codigo=$_GET['id'];
$sql="update datos set alupat='$b1',alumat='$b2',
alunom='
$b3',aludir='$b4',alutel='$b5',alunac='$b6'
where alucod=
$codigo";
$exito=mysql_query($sql);
if (
$exito==1){
header('location: resultados.php');
}else{
echo 
"Error al actualizar <br>$sql";
}
?>


gracias por la ayuda que me den...
No hay perfeccion sin esfuerzo...

dimitrix

Pon al final de todo

Código (php) [Seleccionar]
echo(mysql_error());


Y sabrás que falla.




Shell Root

Cuando muetras Error al actualizar, estás mostrando la query, ejecutala en el motor de base de datos y verás si es error en la query o en el código PHP.
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

s00rk

Intenta agregar ' en


alucod='$codigo'


Luego en
$codigo = $_GET['id'];
haslo asi
$codigo = intval($_GET['id']);

Asi para asegurar que sea numero y que4 no sea algo como un codigo que puedan hackear e igual  limpiar las otras para lo mismo por seguridad n_n

alexander1712

Cita de: s00rk en 23 Agosto 2012, 01:10 AM
Intenta agregar ' en


alucod='$codigo'


Luego en
$codigo = $_GET['id'];
haslo asi
$codigo = intval($_GET['id']);

Asi para asegurar que sea numero y que4 no sea algo como un codigo que puedan hackear e igual  limpiar las otras para lo mismo por seguridad n_n

eso iba a sugerir, pero yo no uso intval, fuerzo el tipo de dato con (int), que es prácticamente lo mismo, pero ya saben otra forma jejeje

$codigo = (int) $_GET['id'];

más que nada así te acostumbras.

sobre esto:


alucod='$codigo'


en valores numéricos no es necesario.

es probable que en tu consulta hallas puesto un nombre mal, prueba con lo que comenta shellroot, es probable que encuentres en seguida el error.

saludos!