Foros del Web » Programando para Internet » PHP »

Modificar varios campos de tabla con un solo clickz

Estas en el tema de Modificar varios campos de tabla con un solo clickz en el foro de PHP en Foros del Web. Hola como estan todos , mis disculpas a ustedes pero levo rato tatando de arreglar este script y no e podido es para poder modificar ...
  #1 (permalink)  
Antiguo 05/07/2012, 08:35
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Exclamación Modificar varios campos de tabla con un solo clickz

Hola como estan todos , mis disculpas a ustedes pero levo rato tatando de arreglar este script y no e podido es para poder modificar varios campos de una tabala lavez con un solo envio pero me da un error en el envio e probado con post a todos y nada sale el mismo error aqui tengo los codigos por fa si pueden echarme una manito se los agradeceria.

Código PHP:
Ver original
  1. <?php
  2. $host = "localhost";
  3. $username = "root";
  4. $password = "";
  5. $db = "bdpractica";
  6. $tabla = "test";
  7.  
  8.  
  9. mysql_connect ("$host", "$username", "$password") or die ("No se puede conectar");
  10. mysql_select_db ("$db") or die ("No se puede seleccionar BD");
  11.  
  12. $sql = "SELECT * FROM $tabla";
  13. $resultado=mysql_query($sql);
  14. $count=mysql_num_rows($resultado);
  15. ?>
  16.  
  17. <table width="500" border="1" cellpadding="0">
  18. <form name="form1" method="post" action="modificar11.php">
  19. <tr>
  20. <td align="center"><strong>Id</strong></td>
  21. <td align="center"><strong>Nombre</strong></td>
  22. <td align="center"><strong>Apellido</strong></td>
  23. <td align="center"><strong>Email</strong></td>
  24. <?php
  25. while ($fila=mysql_fetch_array($resultado)) {
  26. ?>
  27. </tr>
  28. <tr>
  29. <td align="center">
  30. <?php $Id[]=$fila['Id'];?>
  31. <?php echo $fila['Id'];?></td>
  32. <td align="center">
  33. <input type="text" name="Nombre[]" id="Nombre" value="<?php echo $fila['Nombre'];?>"></td>
  34. <td align="center">
  35. <input type="text" name="Apellido[]" id="Apellido" value="<?php echo $fila['Apellido'];?>"></td>
  36. <td align="center"><input type="text" name="Email[]" id="Email" value="<?php echo $fila['Email'];?>" /></td>
  37. <?Php
  38. }
  39. ?>
  40. </tr>
  41. <tr>
  42. <td colspan="4" align="center"><input type="submit" name="submit" value="Enviar"/>
  43. <?php
  44. if($Enviar){
  45. for($i=0;$i<$count;$i++){
  46. $sql1="UPDATE $tabla SET Nombre='$Nombre[$i]', Apellido='$Apellido[$i]',Email='$Email[$i]' WHERE Id=$'Id[$i]'";
  47. $result1=mysql_query($sql1);
  48. }
  49. }
  50. if($result1) {
  51. header("Location:modificar11.php");
  52. }
  53. ?> </tr>
  54. </table>

estos son los errores q me salen

Notice: Undefined variable: Enviar in C:\wamp\www\Validacion\pastel\modificar11.php on line 45

Notice: Undefined variable: result1 in C:\wamp\www\Validacion\pastel\modificar11.php on line 51
  #2 (permalink)  
Antiguo 05/07/2012, 10:02
Avatar de MRotten  
Fecha de Ingreso: junio-2012
Mensajes: 22
Antigüedad: 11 años, 10 meses
Puntos: 5
Respuesta: Modificar varios campos de tabla con un solo clickz

Hola, La variable $Enviar dónde la defines?.
  #3 (permalink)  
Antiguo 05/07/2012, 10:58
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Modificar varios campos de tabla con un solo clickz

Bueno en eso tienes razon pero la tendria que definir normalmente porq lo probe asi y no funciona

$Enviar=$_POST['Enviar'];

Y tampoco funciona y de igual manera no entiendo porq es el otro error si alli esta el result1
  #4 (permalink)  
Antiguo 05/07/2012, 11:08
Avatar de MRotten  
Fecha de Ingreso: junio-2012
Mensajes: 22
Antigüedad: 11 años, 10 meses
Puntos: 5
Respuesta: Modificar varios campos de tabla con un solo clickz

Cambia el name de tu input por Enviar
Código HTML:
Ver original
  1. <input type="submit" name="Enviar" value="Enviar"/>

y ahí la defines como
Código PHP:
Ver original
  1. $Enviar=$_POST['Enviar'];

Lo de result1 no sé, y si pones if($result1>0) o algo, que sale?
  #5 (permalink)  
Antiguo 05/07/2012, 11:13
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Modificar varios campos de tabla con un solo clickz

Disculpa pero me sale el mismo error observa como lo coloque yme da el mismo error
Código PHP:
Ver original
  1. <td colspan="4" align="center"><input type="submit" name="Enviar" value="Enviar"/>
  2. <?php
  3. $Enviar=$_POST['Enviar'];
  4. if($Enviar){
  5. for($i=0;$i<$count;$i++){
  6. $sql1="UPDATE $tabla SET Nombre='$Nombre[$i]', Apellido='$Apellido[$i]',Email='$Email[$i]' WHERE Id=$'Id[$i]'";
  7. $result1=mysql_query($sql1);
  8. }

Notice: Undefined index: Enviar in C:\wamp\www\Validacion\pastel\modificar11.php on line 44

Notice: Undefined variable: result1 in C:\wamp\www\Validacion\pastel\modificar11.php on line 51
  #6 (permalink)  
Antiguo 05/07/2012, 11:22
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Modificar varios campos de tabla con un solo clickz

Hola de nuevo disculpa pero ya rregle los errores q apareceian ya q no tenia las variables declaradas de nombre, apellido y email, ahora no sale ningun error, pero el problema sigue en q no hace ningun registro de los datos cambio los datos en algunos campos y cuando doy enviar no sale nada aqui estan los codigos como estan ahora.

Código PHP:
Ver original
  1. <?php
  2. $host = "localhost";
  3. $username = "root";
  4. $password = "";
  5. $db = "bdpractica";
  6. $tabla = "test";
  7.  
  8.  
  9. mysql_connect ("$host", "$username", "$password") or die ("No se puede conectar");
  10. mysql_select_db ("$db") or die ("No se puede seleccionar BD");
  11.  
  12. $sql = "SELECT * FROM $tabla";
  13. $resultado=mysql_query($sql);
  14. $count=mysql_num_rows($resultado);
  15. ?>
  16.  
  17. <table width="500" border="1" cellpadding="0">
  18. <form name="form1" method="post" action="modificar11.php">
  19. <tr>
  20. <td align="center"><strong>Id</strong></td>
  21. <td align="center"><strong>Nombre</strong></td>
  22. <td align="center"><strong>Apellido</strong></td>
  23. <td align="center"><strong>Email</strong></td>
  24. <?php
  25. while ($fila=mysql_fetch_array($resultado)) {
  26. ?>
  27. </tr>
  28. <tr>
  29. <td align="center">
  30. <?php $Id[]=$fila['Id'];?>
  31. <?php echo $fila['Id'];?></td>
  32. <td align="center">
  33. <input type="text" name="Nombre" id="Nombre" value="<?php echo $fila['Nombre'];?>"></td>
  34. <td align="center">
  35. <input type="text" name="Apellido" id="Apellido" value="<?php echo $fila['Apellido'];?>"></td>
  36. <td align="center"><input type="text" name="Email" id="Email" value="<?php echo $fila['Email'];?>" /></td>
  37. <?Php
  38. }
  39. ?>
  40. </tr>
  41. <tr>
  42. <td colspan="4" align="center"><input type="submit" name="Enviar" value="Enviar"/>
  43. <?php
  44. $Enviar=$_POST['Enviar'];
  45. $Nombre=$_POST['Nombre'];
  46. $Apellido=$_POST['Apellido'];
  47. $Email=$_POST['Email'];
  48. if($Enviar){
  49. for($i=0;$i<$count;$i++){
  50. $sql1="UPDATE $tabla SET Nombre='$Nombre[$i]', Apellido='$Apellido[$i]',Email='$Email[$i]' WHERE Id=$'Id[$i]'";
  51. $result1=mysql_query($sql1);
  52. }
  53. }
  54. if($result1>0) {
  55. header("Location:modificar11.php");
  56. }
  57. ?> </tr>
  58. </table>
  #7 (permalink)  
Antiguo 05/07/2012, 11:43
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Modificar varios campos de tabla con un solo clickz

Por fa nada q me sirve por mas q le doy ahora me volvieron a salir los errores y los datos se actualizan en blanco no entiendo porq
  #8 (permalink)  
Antiguo 05/07/2012, 12:44
Avatar de MRotten  
Fecha de Ingreso: junio-2012
Mensajes: 22
Antigüedad: 11 años, 10 meses
Puntos: 5
Respuesta: Modificar varios campos de tabla con un solo clickz

Si cambias los [$i], en lugar de ponerlos en la consulta

así:
Código PHP:
Ver original
  1. $Enviar=$_POST['Enviar'][$i];
  2. $Nombre=$_POST['Nombre'][$i];
  3. $Apellido=$_POST['Apellido'][$i];
  4. $Email=$_POST['Email'][$i];
  5. if($Enviar){
  6. for($i=0;$i<$count;$i++){
  7. $sql1="UPDATE $tabla SET Nombre='$Nombre', Apellido='$Apellido',Email='$Email' WHERE Id=$'Id'";
  #9 (permalink)  
Antiguo 05/07/2012, 12:56
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Modificar varios campos de tabla con un solo clickz

No entiendo es nada de este error el porq me sale
  #10 (permalink)  
Antiguo 05/07/2012, 15:00
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Modificar varios campos de tabla con un solo clickz

Hola no tampoco me da mas errores ahora la verdad no entiendo q estare haceidno mal, ahora me salen q todas la variables no estan definidas es decir nombre, apellido, email,

aqui vuelvo a subir como me dijiste q probara

<form name="form1" method="post" action="modificar11.php">
<tr>
<table width="500" border="1" cellpadding="0">
<td align="center"><strong>Id</strong></td>
<td align="center"><strong>Nombre</strong></td>
<td align="center"><strong>Apellido</strong></td>
<td align="center"><strong>Email</strong></td>
<?php
while ($fila=mysql_fetch_array($resultado)) {
?>
</tr>
<tr>
<td align="center">
<?php $Id[]=$fila['Id'];?>
<?php echo $fila['Id'];?></td>
<td align="center">
<input type="text" name="Nombre[]" id="Nombre" value="<?php echo $fila['Nombre'];?>"></td>
<td align="center">
<input type="text" name="Apellido[]" id="Apellido" value="<?php echo $fila['Apellido'];?>"></td>
<td align="center"><input type="text" name="Email[]" id="Email" value="<?php echo $fila['Email'];?>" /></td>
<?Php
}
?>
</tr>
<tr>
<td colspan="4" align="center"><input type="submit" name="Enviar" value="Enviar"/>
<?php
$Enviar=$_POST['Enviar'][$i];
$Nombre=$_POST['Nombre'][$i];
$Apellido=$_POST['Apellido'][$i];
$Email=$_POST['Email'][$i];
if($Enviar){
for($i=0;$i<$count;$i++){
$sql1="UPDATE $tabla SET Nombre='$Nombre', Apellido='$Apellido',Email='$Email' WHERE Id=$'Id'";
$result1=mysql_query($sql1);
}
}
if($result1>0) {
header("Location:modificar11.php");
}
mysql_close();
?></tr>
</table>
</form>
  #11 (permalink)  
Antiguo 05/07/2012, 15:35
Avatar de MRotten  
Fecha de Ingreso: junio-2012
Mensajes: 22
Antigüedad: 11 años, 10 meses
Puntos: 5
Respuesta: Modificar varios campos de tabla con un solo clickz

No sé si esto te pueda servir http://www.desarrolloweb.com/articulos/2395.php
  #12 (permalink)  
Antiguo 05/07/2012, 15:52
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Modificar varios campos de tabla con un solo clickz

Sbaes la verdad muchas gracias tambien tengo ese pequeño script y lo estado adaptando pero e tratdo de hacerle una relacion para que muestre los datos y me sale error al cambiar el select * a una select relacionado
  #13 (permalink)  
Antiguo 05/07/2012, 16:34
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Modificar varios campos de tabla con un solo clickz

Holade neuvo , sabes estoy tratando de realizar una consulta relaciona y me da error tambien en este script,

$ssql="select alumnos.nombres, alumnos.cod_alu, notas.cod_alu from alumnos, notas2 where cod_mat = '13' and grado = '8' and cod_alu <> $cod_alu";
$result=mysql_query($ssql);

echo "<form action='modificar.php' method=post>";
echo "\n<table align=center border=1 cellspacing=0>";
echo "<tr><td>Alumnos</td><td>Docentes</td><td>Materia</td><td>Grado</td><td>Notas</td></tr>";

$i=1;
while ($fila = mysql_fetch_array($result)){
echo "\n<input type=hidden name='cod_alu$i' value='".$fila["cod_alu"]."'>";
echo "<tr>";
echo "<td><input type=text value='".$fila["cod_alu"]."' size='5' maxlength='2' readonly='readonly'></td>";
echo "<td><input type=text value='".$fila["cod_doc"]."' size='5' maxlength='2' readonly='readonly'></td>";
echo "<td><input type=text value='".$fila["cod_mat"]."' size='5' maxlength='2' readonly='readonly'></td>";
echo "<td><input type=text value='".$fila["grado"]."' size='5' maxlength='2' readonly='readonly'></td>";
echo "<td><input type=text name='nota1$i' value='".$fila["nota1"]."' size='5' maxlength='2'></td>";
echo "</tr>";
$i++;
$ultimo_mostrado=$fila["cod_alu"];
}

echo "<tr><td colspan='3'><label><input type='submit' value='Registrar Notas'></label></td></tr>";
echo "</table>";
echo "</form>";

//si se han mostrado registros, pongo el enlace para ver los siguientes
if (isset($ultimo_mostrado))
echo "";
}else{

//es que he recibido datos de formulario, entonces tengo que recibirlos y actualizar la base de datos
for ($i=1;$i<=10;$i++){
//para cada uno de los elementos que puede haber en el formulario
if (isset($_POST["cod_alu".$i])){
//es que este registro estaba en el formulario
$cod_alu=$_POST["cod_alu".$i];
$nota1=$_POST["nota1".$i];
$ssql= "update notas2 set nota1 ='$nota1' where cod_mat ='13' and grado ='8' and cod_alu ='$cod_alu'";
if(mysql_query($ssql))?>
</span>

<script type='text/javascript' language='javascript'>
alert('LAS NOTAS FUERON REGISTRADAS SATISFACTORIAMENTE')
document.location.href='lapso1.php'
</script>

<?php } else ?>

<script type='text/javascript' language='javascript'>
alert('! ERROR ¡ LAS NOTAS NO FUERON REGISTRADAS INTENTELO DE NUEVO')
document.location.href='lapso1.php'
</script>

<?php
}
}

?>

El error q me sale es

Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\wamp\www\Sistema Liceo\mdocentes\lapso1.php on line 123

Etiquetas: campos, modificar, mysql, sql, tabla
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 17:03.