Ver Mensaje Individual
  #1 (permalink)  
Antiguo 16/04/2012, 16:59
Avatar de DeivisAndres
DeivisAndres
 
Fecha de Ingreso: febrero-2012
Ubicación: Colombia
Mensajes: 305
Antigüedad: 12 años, 2 meses
Puntos: 41
Pregunta Error en cambio de estado de un campo de una tabla mediante un formulario

Hola a todos... Pues hoy vengo con un problemita en un formulario, en php, es lo siguiente, tengo dos tablas una se llama computadores y otra centrocosto, en la tabla computadores tiene unos campos llamados computador_ID, cc_Cod (que seria la llave foranera que se une a la tabla centrocosto) y un campo llama do estado ya sea libre o asignado, y en la tabla centrocosto esta el campo cc_ID que seria la llave primaria. entonces lo que pasa es que yo quiero cambiar ese estado a asignado ya que cuendo registro un computador se registra como libre, por medio de un formulario... he intentado todo, pues pienso que para que el estado cambien tengo que modificar la tabla computadores... aqui les dejo el codigo php... la pagina donde esta el formulario se llama asignacion.php

Código Javascript:
Ver original
  1. <?php
  2.     $link = mysql_connect('localhost', 'root', '');
  3.     if(!$link) {
  4.         die("Error al intentar conectar: ".mysql_error());
  5.     }
  6.     $db_link = mysql_select_db('assignteams', $link);
  7.     if(!$db_link) {
  8.         die("Error al intentar seleccionar la base de datos". mysql_error());
  9.     }
  10.     if(isset($_REQUEST['codigoComp'])){
  11.         $codigoComp = $_REQUEST['codigoComp'];
  12.         $sql = mysql_query("SELECT * FROM computadores WHERE computador_ID = $codigoComp", $link) or die(mysql_error());
  13.         $row = mysql_fetch_array($sql);
  14.         //$mensajeA = "<b><font color=\"red\">¿Esta seguro que desea asignarlo?</font></b>";
  15.    }
  16.     if(isset($_POST['asignar']) && $_POST['asignar'] == 'Asignar'){
  17.         if(!empty($_REQUEST['codigoComp']) && !empty($_REQUEST['codigoCC'])){
  18.             $estado = "Asignado";
  19.             $codigoComp = $_REQUEST['codigoComp'];
  20.             $codigoCC = $_REQUEST['codigoCC'];
  21.             $sqlUpdate = mysql_query("UPDATE computadores,centrocosto SET estado = '$estado' WHERE computadores.computador_ID = '$codigoComp' AND centrocosto.cc_ID = '$codigoCC'", $link) or die(mysql_error());
  22.         header('Location: principal.php?assign="asignado"');
  23.         }else{
  24.             header('Location: principal.php?assignE="ErrorAsignacion"');
  25.         }
  26.     }else{
  27. ?>
  28. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  29. <html xmlns="http://www.w3.org/1999/xhtml">
  30. <head>
  31. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  32. <title></title>
  33. <link type="text/css" href="css/custom-theme/jquery-ui-1.8.18.custom.css" rel="stylesheet" />  
  34. <script type="text/javascript" src="js/jquery-1.7.1.min.js"></script>
  35. <script type="text/javascript" src="js/jquery-ui-1.8.18.custom.min.js"></script>
  36. <script type="text/javascript">
  37. $(document).ready(function(){
  38.     $('#buttonANo').button();
  39.     $('#buttonAsignacionComp').button();
  40.     // Dialog
  41.     $('#dialogAsignacionComp').dialog({
  42.         autoOpen: false,
  43.                                
  44.         modal: true,
  45.         // Largo
  46.         width: 'auto',
  47.         // Alto
  48.         height: 'auto',
  49.         // Efecto al abrir
  50.         show: "explode",
  51.         // Efecto al cerrar
  52.         hide: "explode"
  53.     });
  54.  
  55.     $('#buttonANo').click(function(){
  56.     $('#dialogAsignacionComp').dialog('close');
  57.     });                
  58. });
  59. </script>
  60. <style type="text/css">
  61. body
  62. {
  63.     font-size:0.9em;
  64. }
  65.  
  66. #formAsignacion label{
  67.     display: block;
  68. }
  69.  
  70. #datosAsignacion{
  71.     border-radius: 5px 5px 5px 5px;
  72. }
  73.  
  74. #datosAsignacion input{
  75.     width: 200px;
  76.     height:25px;
  77.     border: 1px solid rgba(0, 0, 0, 0.1);
  78.     border-radius: 5px 5px 5px 5px;
  79.     font-size: 0.8em;
  80. }
  81.  
  82. .boton {
  83.     background: none repeat scroll 0 0 #FAFAFA;
  84.     border: 1px solid rgba(0, 0, 0, 0.1);
  85.     border-radius: 5px 5px 5px 5px;
  86.     color: #000000;
  87.     font-size: 0.9em;
  88.     font-weight: bold;
  89.     padding: 5px;
  90. }
  91. </style>
  92. </head>
  93. <body>
  94. <div id="dialogAsignacionComp" title="Formilario para la Asignacion">
  95. <form action="<?php $_SERVER['PHP_SELF']; ?>" method="post" name="formAsignacion" id="formAsignacion" accept-charset="utf-8">  
  96.     <fieldset id="datosAsignacion">
  97.         <table>
  98.             <tr>
  99.                 <td>
  100.                     <label> Codigo Computador: </label>
  101.                     <input type="text" name="codigoComp" size="20" required />
  102.         </td>
  103.         <td>
  104.                     <label> Codigo Centro: </label>
  105.                     <input type="text" name="codigoCC" size="20" required />
  106.         </td>
  107.             </tr>
  108.             <tr>
  109.                 <td colspan="3"><label><?php echo "<b><font color=\"red\">¿Esta seguro que desea asignarlo?</font></b>"; ?></label></td>
  110.             </tr>
  111.             <tr>
  112.                 <td>                  
  113.                     <input name="codigoComp" type="hidden" value="<?php echo $row['computador_ID']; ?>" />
  114.             </td>              
  115.                 <td><div align="center"><input name="asignar" type="submit" value="Asignar" id="buttonAsignacionComp" /></div></td>
  116.                 <td><div align="center"><a><input id="buttonANo" type="button" value="No" /></a></div></td>
  117.             </tr>
  118.         </table>
  119.     </fieldset>
  120. </form>
  121. </div>
  122. </body>
  123. </html>
  124. <?php } ?>
y me sale un error de sintaxis de SQL... puesto que quiero cambiar el estado del campo estado de libre a asignado.. entonces lo que pido en el formulario es el código (llave primaria) de la tabla computadores y el código (llave primaria) de la tabla centrocosto... para ver si me ayudan en que estoy mal en el codigo php...