Foros del Web » Programando para Internet » PHP »

Problema al modificar datos en mysql

Estas en el tema de Problema al modificar datos en mysql en el foro de PHP en Foros del Web. tengo este script para modificar unos datos en mysql @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código php: Ver original $modifica = "UPDATE estado_de_cuenta SET  enero=' $enero ', febrero=' $febrero ...
  #1 (permalink)  
Antiguo 31/01/2009, 20:15
Avatar de el_cesar  
Fecha de Ingreso: mayo-2001
Ubicación: Cali
Mensajes: 2.423
Antigüedad: 22 años, 10 meses
Puntos: 20
Problema al modificar datos en mysql

tengo este script para modificar unos datos en mysql
Código php:
Ver original
  1. $modifica="UPDATE estado_de_cuenta SET  enero='$enero', febrero='$febrero', marzo='$marzo', abril='$abril', mayo='$mayo', junio='$junio', julio='$julio', agosto='$agosto', septiembre='$septiembre', octubre='$octubre', noviembre='$noviembre', diciembre='$diciembre' WHERE vehiculo = '$vehiculo1'";
  2. $actualiza=mysql_query($modifica) or die(mysql_error());

pero resulta que lo corro y no me actualiza ningun dato, que tengo mal?
__________________
Say no more.......
  #2 (permalink)  
Antiguo 31/01/2009, 20:18
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Problema al modificar datos en mysql

Si no te muestra ningún error, usa mysql_affected_rows para ver el total de filas, si es 0, en ese caso no hay datos que actualizar.

Saludos
  #3 (permalink)  
Antiguo 31/01/2009, 20:26
Avatar de el_cesar  
Fecha de Ingreso: mayo-2001
Ubicación: Cali
Mensajes: 2.423
Antigüedad: 22 años, 10 meses
Puntos: 20
le puse mysql_affected_rows asi
$modifica="UPDATE estado_de_cuenta SET enero='$enero', febrero='$febrero', marzo='$marzo', abril='$abril', mayo='$mayo', junio='$junio', julio='$julio', agosto='$agosto', septiembre='$septiembre', octubre='$octubre', noviembre='$noviembre', diciembre='$diciembre' WHERE vehiculo = '$vehiculo1'";
$actualiza=mysql_query($modifica) or die(mysql_error());
$afectadas=mysql_affected_rows($actualiza);

y me dio este error

Warning: mysql_affected_rows(): supplied argument is not a valid MySQL-Link resource in /home/content/c/e/j/cejarcon/html/everest/extract/pagar.php on line 52

listo ya lo hice y me sale 0 en el mysql_affected_rows
__________________
Say no more.......

Última edición por GatorV; 31/01/2009 a las 20:35
  #4 (permalink)  
Antiguo 31/01/2009, 20:34
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Problema al modificar datos en mysql

En ese caso el Query es exitoso, solamente que no hay datos que actualizar en tu BDD, es por eso que no te modifica nada, cambia alguno de los valores de tu query para que veas el valor correcto.

Saludos
  #5 (permalink)  
Antiguo 31/01/2009, 20:39
Avatar de el_cesar  
Fecha de Ingreso: mayo-2001
Ubicación: Cali
Mensajes: 2.423
Antigüedad: 22 años, 10 meses
Puntos: 20
Respuesta: Problema al modificar datos en mysql

mmm el caso es que tengo que actualizar datos
este es todo mi script

Código php:
Ver original
  1. <?php
  2. include('connect.php');
  3. include('login.php');
  4. if($loginCorrecto)
  5. {
  6.     {
  7.         list($hora, $ampm) = explode('-', date('g-a', time()));
  8.  
  9.         if($ampm == 'am' && $hora > 11) // Las de de la noche pasa a ser cero
  10.             $hora = 0;
  11.         else if($ampm == 'pm' && $hora < 12) // Aseguramos comparar en base a 24 horas
  12.             $hora += 12;
  13.  
  14.         if($hora < 12)
  15.             echo 'buenos dias <b>'.$nombreUsuarioL.'</b>';
  16.         else if($hora < 19)
  17.         echo 'buenas tardes <b>'.$nombreUsuarioL.'</b>';
  18.         else
  19.         echo 'buenas noches <b>'.$nombreUsuarioL.'</b>';  
  20.     }
  21. ?>
  22. <head>
  23. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  24. </head>
  25. <?php
  26. include ('connect.php');
  27.  
  28.  
  29. $vehiculo1=$_POST['vehiculos3'];
  30. $afiliacion=$_POST['afiliacion'];
  31. $enero=$_POST['enero'];
  32. $febrero=$_POST['febrero'];
  33. $marzo=$_POST['marzo'];
  34. $abril=$_POST['abril'];
  35. $mayo=$_POST['mayo'];
  36. $junio=$_POST['junio'];
  37. $julio=$_POST['julio'];
  38. $agosto=$_POST['agosto'];
  39. $septiembre=$_POST['septiembre'];
  40. $octubre=$_POST['octubre'];
  41. $noviembre=$_POST['noviembre'];
  42. $diciembre=$_POST['diciembre'];
  43. $ano=$_GET['ano'];
  44. $vehiculo=$_GET['vehiculo'];
  45. $empresa=$_GET['empresa'];
  46. if ($vehiculo1) {
  47.  
  48.  
  49.  
  50.  $modifica="UPDATE estado_de_cuenta SET  enero='$enero', febrero='$febrero', marzo='$marzo', abril='$abril', mayo='$mayo', junio='$junio', julio='$julio', agosto='$agosto', septiembre='$septiembre', octubre='$octubre', noviembre='$noviembre', diciembre='$diciembre' WHERE vehiculo = '$vehiculo1'";
  51. $actualiza=mysql_query($modifica) or die(mysql_error());
  52.     printf("Records deleted: %d\n", mysql_affected_rows());
  53.  
  54. echo '<SCRIPT LANGUAGE="javascript">';
  55. echo 'location.href = "http://www.everestltda.com/extract/valida_pago.php?placa='.$vehiculo1.'&empresa='.$empresa.'"';
  56. echo '</SCRIPT>';
  57.  
  58. }else{
  59. //conecta a la base de datos
  60.  
  61. $mysql_id = mysql_connect('p50mysql199.secureserver.net', 'everestltda', 'Buckdich0920');
  62. mysql_select_db('everestltda', $mysql_id);
  63.  
  64. $sql="SELECT * from estado_de_cuenta WHERE vehiculo = '".$vehiculo."' AND ano = '".$ano."'";
  65. $ejecuta=mysql_query($sql) or die (mysql_error());
  66. ?>
  67.  
  68. <form id="form1" name="form1" method="post" action="pagar.php">
  69. <label>
  70. <table align="center">
  71. <?php
  72. echo '<table>';
  73. while ($row=mysql_fetch_assoc($ejecuta)) {
  74. echo '<tr>';
  75. echo '<td colspan2><b>Pagos 2008</b></td>';
  76. echo '</tr>';
  77. echo '<tr>';
  78. echo '<td>Numero Interno</td>';
  79. ?>
  80. <td><input type="text" name="vehiculos3" value="<?php echo $row['vehiculo']; ?>" ></td>
  81. <?php
  82. echo '</tr>';
  83. echo '<tr>';
  84. echo '<td>Afiliacion</td>';
  85. ?>
  86. <td><input type="text" name="afiliacion" value="<?php echo $row['afiliacion']; ?>" ></td>
  87. <?php
  88. echo '</tr>';
  89. echo '<tr>';
  90. echo '<td>Enero</td>';
  91. ?>
  92. <td><input type="text" name="enero" value="<?php echo $row['enero']; ?>" ></td>
  93. <?php
  94. echo '</tr>';
  95. echo '<tr>';
  96. echo '<td>Febrero</td>';
  97. ?>
  98. <td><input type="text" name="febrero" value="<?php echo $row['febrero']; ?>" ></td>
  99. <?php
  100. echo '</tr>';
  101. echo '<tr>';
  102. echo '<td>Marzo</td>';
  103. ?>
  104. <td><input type="text" name="marzo" value="<?php echo $row['marzo']; ?>" ></td>
  105. <?php
  106. echo '</tr>';
  107. echo '<tr>';
  108. echo '<td>Abril</td>';
  109. ?>
  110. <td><input type="text" name="abril" value="<?php echo $row['abril']; ?>" ></td>
  111. <?php
  112. echo '</tr>';
  113. echo '<tr>';
  114. echo '<td>Mayo</td>';
  115. ?>
  116. <td><input type="text" name="mayo" value="<?php echo $row['mayo']; ?>" ></td>
  117. <?php
  118. echo '</tr>';
  119. echo '<tr>';
  120. echo '<td>Junio</td>';
  121. ?>
  122. <td><input type="text" name="junio" value="<?php echo $row['junio']; ?>" ></td>
  123. <?php
  124. echo '</tr>';
  125. echo '<tr>';
  126. echo '<td>Julio</td>';
  127. ?>
  128. <td><input type="text" name="julio" value="<?php echo $row['julio']; ?>" ></td>
  129. <?php
  130. echo '</tr>';
  131. echo '<tr>';
  132. echo '<td>Agosto</td>';
  133. ?>
  134. <td><input type="text" name="Agosto" value="<?php echo $row['agosto']; ?>" ></td>
  135. <?php
  136. echo '</tr>';
  137. echo '<tr>';
  138. echo '<td>Septiembre</td>';
  139. ?>
  140. <td><input type="text" name="septiembre" value="<?php echo $row['septiembre']; ?>" ></td>
  141. <?php
  142. echo '</tr>';
  143. echo '<tr>';
  144. echo '<td>Octubre</td>';
  145. ?>
  146. <td><input type="text" name="octubre" value="<?php echo $row['octubre']; ?>" ></td>
  147. <?php
  148. echo '</tr>';
  149. echo '<tr>';
  150. echo '<td>Noviembre</td>';
  151. ?>
  152. <td><input type="text" name="noviembre" value="<?php echo $row['noviembre']; ?>" ></td>
  153. <?php
  154. echo '</tr>';
  155. echo '<tr>';
  156. echo '<td>Diciembre</td>';
  157. ?>
  158. <td><input type="text" name="diciembre" value="<?php echo $row['diciembre']; ?>" ></td>
  159. <?php
  160. echo '</tr>';
  161. echo '<tr>';
  162. echo '<td colspan="2" align="center"><input type="submit" name="submit" value="Registrar Pago"></td>';
  163. echo '</tr>';
  164. echo '<tr>';
  165. echo '<td colspan="2" align="center"> <a href="javascript:history.back(1)">Volver Atrás</a></td>';
  166. echo '</tr>';
  167. echo '<tr>';
  168. echo '<td colspan="2" align="center"> <a href="menu.php">Ir al Menu</a></td>';
  169. echo '</tr>';
  170. echo '<tr>';
  171. echo '<td colspan="2" align="center"> <a href="logout.php">Salir</a></td>';
  172. echo '</tr>';
  173. }
  174. echo '</table>';
  175.  
  176.  
  177. }
  178. }else
  179. {
  180. echo "Bienvenido visitante, el sistema no te ha reconocido";
  181. ?>
  182. <SCRIPT LANGUAGE="javascript">
  183. location.href = "http://www.everestltda.com/extract/ingreso.php";
  184. </SCRIPT>
  185. <?php
  186. }
  187.  
  188. ?>
__________________
Say no more.......
  #6 (permalink)  
Antiguo 31/01/2009, 20:42
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Problema al modificar datos en mysql

Como te comento, el gestor de BDD actualiza los datos solo si hay datos que actualizar, si te dice 0 affected rows es que para ese registro el UPDATE no encontro datos que cambiar, por lo que prueba cambiar 1 dato y ve si asi se ejecuta la consulta.

Saludos
  #7 (permalink)  
Antiguo 31/01/2009, 20:49
Avatar de el_cesar  
Fecha de Ingreso: mayo-2001
Ubicación: Cali
Mensajes: 2.423
Antigüedad: 22 años, 10 meses
Puntos: 20
Respuesta: Problema al modificar datos en mysql

listo le deje el where como constante y modifica los datos, como lo puedo poner entonces con variable?
__________________
Say no more.......
  #8 (permalink)  
Antiguo 31/01/2009, 21:57
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Problema al modificar datos en mysql

Pues tal cual lo estabas poniendo solo asegurate de pasar un valor correcto.

Saludos.
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 20:46.