Tengo un par de días tratando de entender por que mi archivo editar.php no agarra una variable enviada desde un form, el punto es el siguiente.
El código se transfirió a un nuevo servidor donde se instalaron las aplicaciones PHP y Apache donde debe funcionar la pagina, el punto es que al momento de editar un registro me marca un error de servidor en el navegador no me muestra nada, pero si debugeo me dice que hay un error 500.
Ya a revisado una y tras otra y no puedo encontrar el problema yo se que el código que hice funciona por que me funciono en mi servidor de hosting, no se si tenga que ver la versión o algo. Aqui le pongo el codigo que huso en el archivo editar.php
Desde la vista del registro utilizo la url con un parametro ID.
Código PHP :
<a href="editar.php?id=<?php echo $row['id_user']; ?>" id="Editar" class="tooltip">Editar</a>
Este archivo es editar.php
Código PHP :
<?php if(isset($_POST['submit'])) { //Conectamos con la BD include('conexion.php'); $conexion = ConectarseBD(); //Varibles para traer la informacion que se actualizara en la tabla. $id = $_POST['id']; //Varibles para traer la informacion que se insertara en la tabla. $nombre = $_POST['name_user']; $apellidos = $_POST['last_name']; $correo = $_POST['email']; //Acutalizar la informacion el la tabla. $query = ("UPDATE `users` SET `name` = '$nombre', `last_name` = '$apellidos', `email` = '$correo' WHERE `id_user` =$id") or die ('Error de actualizacion'); echo "<script> window.alert('Actualizacion exitosa!!'); location.href='registrar.php';</script>"; } else { if(isset($_POST['id'])) { // Tomo el dato del ID del Link $clave = $_POST['id']; include('conexion.php'); $conexion = ConectarseBD(); $sql = "SELECT * FROM users where id_user= $clave" or die ("Error de consulta"); ?> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"><head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Registrar usuarios</title> <!-- Stylus --> <link href="../css/style_meqcer.css" rel="stylesheet" type="text/css" /> <link rel="shortcut icon" href="../img/favicon.ico"> <!-- Media --> <script language="javascript" type="text/javascript" src="niceforms.js"></script> <link rel="stylesheet" type="text/css" media="all" href="niceforms-default.css" /> <script language="JavaScript" type="text/javascript"> <!-- function Confirmar(frm) { var borrar = confirm("Desea guardar estos ajustes?"); return borrar; //true o false } //--> </script> </head> <body> <div id="site"> <div id="site-interior"> <div id="header"> <div class="col-1"> <div class="logo"><a href="http://test.meqcer.com/admin"><img src="../img/logo.jpg" width="275" height="99"></a></div> </div> <div class="col-1r"> <div align="right" class="user"> <img src="../img/user_business_32.png" width="32" height="32"> <?php //Imprime la variable de sesion o usuario cuanto este este logueado, $_SESSION['user'] ?> <?php if (isset($_SESSION['k_email'])) { echo '<a style="color:#000;" href="logout.php">{Salir '.$_SESSION['k_email'].'}</a>'; } ?> </div> <p id="blurb-title">CMS Catálogo</p> </div> <div class="clear"></div> </div> <div class="clear"></div> <p align="right"><a style="color:#000;" href="http://www.wconexion.com.mx/meqcer/admin/registrar.php">Usuarios</a> <a style="color:#000;" href="http://www.wconexion.com.mx/meqcer/admin/catalog/index.php">Catálogo</a> <a style="color:#000;" href="http://www.wconexion.com.mx/meqcer/admin/newslletter/index.php">Boletín Electrónico</a></p> <div id="menu-nav" style="padding-top:10px; padding-right:15px; color:#FFF;" align="right"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td width="40"><a href="index.php" id="Ir a inicio" class="tooltip"><img src="../img/home_back_32.png" width="32" height="32"></a></td> </tr> </table> </div> <div class="clear"></div> <div align="right" style="padding-top:3px;"><img src="../img/cintilla.jpg" width="398" height="2"></div> <div style="margin-top:15px;" id="wrapper"> <div class="inventario"> <p id="blurb">Editar usuario</p> <div class="clear"></div> <div class="col-1" style="font-size:14px; font-weight:bold; height:541px; background-image:url(../img/bg_registro.jpg); background-repeat:no-repeat; margin-left:250px;"> <?php while ($row = mysql_fetch_array($sql)) {?> <form name="form" method="post" action="editar.php" class="niceform"> <table cellpadding="0" cellspacing="0" border="0" width="424"> <tr> <td align="right"> </td> <td> </td> <td> </td> </tr> <tr> <td colspan="3" align="right"> </td> </tr> <tr> <td align="right"> </td> <td> </td> <td> </td> </tr> <tr> <td width="108" align="right">Nombre:</td> <td width="10"> </td> <td width="151"><input type="hidden" name="id" value="<?php echo $row['id_user']; ?>"><input type="text" name="name_user" size="20" maxlength="20" value="<?php echo $row['name']; ?>" /></td> </tr> <tr> <td> </td> <td> </td> <td> </td> </tr> <tr> <td align="right">Apellidos:</td> <td> </td> <td><input type="text" name="last_name" size="20" maxlength="20" value="<?php echo $row['last_name']; ?>" /></td> </tr> <tr> <td> </td> <td> </td> <td> </td> </tr> <tr> <td align="right">E-mail:<br> <span style="font-size:9px;">(Se usara como login)</span></td> <td> </td> <td><input type="text" name="email" size="20" maxlength="40" value="<?php echo $row['email']; ?>" /></td> </tr> <tr> <td> </td> <td> </td> <td> </td> </tr> <tr> <td colspan="3" align="center"><input onClick='return Confirmar(this.form)' type="submit" name="submit" id="submit" value="Guardar cambios >>" /></td> </tr> <tr> <td colspan="3" align="center"> </td> </tr> <tr> <td colspan="3" align="center"> </td> </tr> <tr> <td colspan="3" align="center"> </td> </tr> <tr> <td colspan="3" align="center"> </td> </tr> <tr> <td colspan="3" align="center"> </td> </tr> <tr> <td colspan="3" align="center"> </td> </tr> <tr> <td align="right" colspan="3" style="padding-right:10px;"><a href="javascript:history.back()">Regresar</a></td> </tr> </table> </form> <? } ?> </div> <div class="clear"></div> </div> <div class="clear"></div> </div> </div> </div> <div id="footer"> </div> </body> </html> <?php } } ?>
Revisando bien no me esta arrastrando la variable $_POST['id'] y cual es la diferencia entre usar $_GET, $_POST o $_RECUEST.
Espero puedan ayudarme,
saludos y gracias.