• Viernes 8 de Noviembre de 2024, 09:56

Autor Tema:  Qué Está Mal?  (Leído 2174 veces)

Adriana Olvera

  • Nuevo Miembro
  • *
  • Mensajes: 21
    • Ver Perfil
Qué Está Mal?
« en: Jueves 20 de Septiembre de 2007, 17:45 »
0
Hola amigos, fijense que tengo una página que modifica pero solo hace la finta pq no guarda ningún cambio, espero puedan ver los códigos y desirme que tengo mal pq ya los borre dos veces y los volví a escribir pero no me sale y según yo ya no tiene ningún error. :unsure:
 los códigos son:
permisos.php
<?php
include ("seg_seguridad.php");
include ("conexion.php");
//ver tabla de usuarios
$bu=mysql_query ("SELECT * FROM usuarios WHERE nivel!='director'");
print "<center><b>Tabla de Permisos</b><br>
<table border=1>
 <tr>
 <td><b>num_empleado</b></td>
 <td><b>nombre</b></td>
 <td><b>nivel</b></td>
 <td colspan=2 align=center><b>Acciones</b></td>
 </tr>";
  while ($pe=mysql_fetch_array ($bu))
  {
  $num_empleado=$pe['num_empleado'];
  $nombre=$pe['nombre'];
  $nivel=$pe['nivel'];
  print "<tr>
  <td>$num_empleado</td>
  <td>$nombre</td>
  <td>$nivel</td>
  <td><a title='Modificar Permiso' href='modificarpermiso.php?num_empleado=$num_empleado&acc=cambio'><img src='modificar.gif' width='40' height='40' border='0'></a></td>
  <td><a title='Borrar Empledo' href='permaccion.php?num_empleado=$num_empleado&acc=borrar'<img src='borrar.gif' width='40' height='40' border='0'></a></td></tr>";
  }
  print "</table></center><br>";
?>
<?php
mysql_close();
?>

permaccion.php
<?php
include ("conexion.php");
 switch ($_GET[acc])
 {
  case "cambio":
  mysql_query("UPDATE usuarios SET
  nombre='$_POST[nombre]',
  nivel='$_POST[nivel]'
  WHERE num_empleado='$_GET[num_empleado]'");
  break;
  case "borrar":
  mysql_query("DELETE FROM usuarios WHERE num_empleado='$_GET[num_empleado]'");
  break;
 }
 mysql_close();
 header ('Location: permisos.php');
?>

modicarpermisos.php
<?php
include ("seg_seguridad.php");
include("conexion.php");
if ($_GET[acc]=="cambio")
    {
   $bu=mysql_query("SELECT * FROM usuarios WHERE num_empleado='$_GET[num_empleado]'");
   $pe=mysql_fetch_array ($bu);
    $nombre=$pe[nombre];
   $nivel=$pe[nivel];
   //$accion="cambio";
    }
?>
<form method='POST' name='permiso' id='permiso' <?php echo "action=permaccion.php?acc=$_GET[acc]&num_empleado='$pe[num_empleado]'"; ?>>
    <center><b>Modificar Permisos</b></center><br><br>
  <table border='1'>
<tr>
  <td><strong>Nombre:</strong></td>
  <td>
    <input type='text' name='nombre' size='60' maxlength='80' <?php echo "value='$pe[nombre]'"; ?>>
     </td>
  </tr>
 <tr>
  <td><strong>Nivel:</strong></td>
    <td><select name='nivel' class='conborde'>
  <option value='profesor' <?php if ($pe[nivel]=="profesor"){print ("selected");} ?>> Profesor</option>
  <option value='coordinador' <?php if ($pe[nivel]=="coordinador"){print ("selected");} ?>> Coordinador</option>
  </select>  </td>
  </tr>
 <tr>
<td colspan='2'>
<input type="reset" name="Restablecer" id="Restablecer" value="Restablecer">
<input name="Enviar" type="submit" id="Enviar" value="Enviar"></td>
</tr>
</table>
<?php
mysql_close();
?>
</form>

creo que el error está en la de permaccion.php
Gracias,  :hola:
No todo lo que es oro brilla, remedio chino e infalible.

bisoph_as

  • Miembro activo
  • **
  • Mensajes: 57
  • Nacionalidad: mx
    • Ver Perfil
Re: Qué Está Mal?
« Respuesta #1 en: Jueves 20 de Septiembre de 2007, 18:45 »
0
Hola que tal adriana. Pues fijate que medio revise el codigo pero como dices no le encuentro algun defecto, esas cosas suelen pasar pero ya intentaste algo como esto:

// en la parte del UPDATE


echo $sql="UPDATE usuarios SET nombre='$_POST[nombre]', nivel='$_POST[nivel]' WHERE num_empleado='$_GET[num_empleado]'";

$respuesta=mysql_query() or die("NO se actualizo");
if($respuesta)
      echo "has otra cosa";



//// listo



y el echo del $sql, te devolvera la sentencia que estas ejecutando en el motor mysql, ents checas que parametros o que es lo que estas pasando al mysql. le haces cut and paste en el phpmyadmin y verificas si ejecuta la sentencia si no  pues ahi puede estar el detall. Yo siempre hago eso :D saludos

 :comp:  :lightsabre:
JeSús dice: Cometer Errores Es humano Perdonar es divino

bisoph_as

  • Miembro activo
  • **
  • Mensajes: 57
  • Nacionalidad: mx
    • Ver Perfil
Re: Qué Está Mal?
« Respuesta #2 en: Jueves 20 de Septiembre de 2007, 18:48 »
0
jeje sorry olvide algo  :rolleyes:

no puse el $sql en esta linea:


$respuesta=mysql_query($sql) or die("NO se actualizo");


bueno espero que sirva de algo :D.


Como dice mi firma cometer errores es humano jeje
JeSús dice: Cometer Errores Es humano Perdonar es divino

LeGatoRojo

  • Miembro HIPER activo
  • ****
  • Mensajes: 552
  • Nacionalidad: mx
    • Ver Perfil
    • LeGatoRojo
Re: Qué Está Mal?
« Respuesta #3 en: Jueves 20 de Septiembre de 2007, 18:53 »
0
pues yo te recomendario usar

<!--php1--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>PHP </td></tr><tr><td id='CODE'><!--ephp1--><code>[color= #000000]

   extract($_GET);
   extract($_POST);
[/color]
</code><!--php2--></td></tr></table><div class='postcolor'><!--ephp2-->

en vez del array, para no confundir
Un día desperte y en lugar de dientes tenía colmillos, en lugar de manos, tenía garras; pero lo más impactante fue el color escarlata de mi pelaje.

Adriana Olvera

  • Nuevo Miembro
  • *
  • Mensajes: 21
    • Ver Perfil
Re: Qué Está Mal?
« Respuesta #4 en: Jueves 20 de Septiembre de 2007, 19:12 »
0
hola jesus gracias x tú ayuda, mira está es la linea que me manda

=UPDATE usuarios SET nombre='Baltazar Jiménez Leoncio', nivel='profesor' WHERE num_empleado='\'7\''NO se actualizo

me manda los datos pero sin actualizar, que loco no, jajaja
No todo lo que es oro brilla, remedio chino e infalible.

bisoph_as

  • Miembro activo
  • **
  • Mensajes: 57
  • Nacionalidad: mx
    • Ver Perfil
Re: Qué Está Mal?
« Respuesta #5 en: Jueves 20 de Septiembre de 2007, 19:22 »
0
Pues ahora le puedes quitar el die("No se actualizo");
solo dejas el mysql_query($sql); y con el if($respuesta) lo manejas de tal manera que si hay un error te dirija a la pagina donde estaba listada la info, o algo asi, me da gusto que te haya sido de ayuda.  tamos en contaco :D
JeSús dice: Cometer Errores Es humano Perdonar es divino

giomar

  • Miembro MUY activo
  • ***
  • Mensajes: 270
    • Ver Perfil
Re: Qué Está Mal?
« Respuesta #6 en: Viernes 12 de Octubre de 2007, 23:36 »
0
hola, te percataste que tu condicion es:

num_empleado='\'7\'

osea esta preguntando si num_empleado sea igual a '7

me parece que esa es la razon, no actualiza por que simplemente no encuentra el numero de empleado '7 para hacerlo.

espero te sirva...
Giomar B.
Desarrollador Web Profesional