Foros del Web » Programando para Internet » PHP »

Actualizacion

Estas en el tema de Actualizacion en el foro de PHP en Foros del Web. Hola a todos, Estoy haciendo esta actualizacion: Código PHP: <form method="post" name="form1" action=" <?php  echo  $editFormAction ;  ?> "> <? mysql_connect ( "localhost" , "usuario" , "contraseña" ); ...
  #1 (permalink)  
Antiguo 23/10/2007, 00:32
 
Fecha de Ingreso: agosto-2007
Mensajes: 64
Antigüedad: 16 años, 8 meses
Puntos: 0
Actualizacion

Hola a todos,

Estoy haciendo esta actualizacion:

Código PHP:
<form method="post" name="form1" action="<?php echo $editFormAction?>">
<?
mysql_connect
("localhost","usuario","contraseña");
mysql_select_db("Datuak3");

     for (
$i=1;$i<=10;$i++){ 
      
//para cada uno de los elementos que puede haber en el formulario 
      
if (isset($_POST["IdKontsulta" $i])){ 
         
//es que este registro estaba en el formulario 
         
$id $_POST["IdKontsulta" $i]; 
         
$Data $_POST["KontsultaData" $i];
         
$KontsulEra $_POST["IdKontsultaEra" $i]; 
         
$Gaia $_POST["Gaia" $i];

         
$ssql "Update Kontsultak set KontsultaData='$Data', IdKontsultaEra='$KontsulEra', Gaia='$Gaia' where IdKontsulta=$id"
         
         
$Eje mysql_query($ssql) or die (mysql_error());
         
      } 
     }
     
     
$query_Kontsultak "SELECT * FROM Kontsultak";
     
$Kontsultak mysql_query($query_Kontsultak) or die(mysql_error());
     
//$row_Kontsultak = mysql_fetch_assoc($Kontsultak);
     //$totalRows_Kontsultak = mysql_num_rows($Kontsultak);
     
     
$query_KonEra "select * from KontsultaEra";
     
$KonEra mysql_query($query_KonEra$Datuak3) or die(mysql_error());
     
$row_KonEra mysql_fetch_assoc($KonEra);
     
$totalRows_KonEra mysql_num_rows($KonEra);

?>
    <table width="651" border="1" align="left">
      <tr align="center" valign="baseline">
        <td width="143" nowrap><u><strong>IdKontsulta</strong></u></td>
        <td width="160"><u><strong>KontsultaData</strong></u></td>
        <td width="160"><u><strong>IdKontsultaEra</strong></u></td>
        <td width="160"><u><strong>Gaia</strong></u></td>
      </tr>
      <tr valign="baseline">
    <?
     $i
=1;
     while (
$row_Kontsultak=mysql_fetch_array($Kontsultak)){ 
    
?>     
        <td nowrap align="left"><?php echo $row_Kontsultak['IdKontsulta']; ?></td>
        <td><input type="text" name="KontsultaData" value="<?php echo $row_Kontsultak['KontsultaData']; ?>" size="32" /></td>
        <td><label>
          <select name="IdKontsultaEra" id="IdKontsultaEra">
            <?php
             
do {  
            
?>
            <option value="<?php echo $row_KonEra['IdKontsultaEra']?>"<?php if (!(strcmp($row_KonEra['IdKontsultaEra'], $row_Kontsultak['IdKontsultaEra']))) {echo "selected=\"selected\"";} ?>><?php echo $row_KonEra['KontsultaEra']?></option>
            <?php
} while ($row_KonEra mysql_fetch_assoc($KonEra));
  
$rows mysql_num_rows($KonEra);
  if(
$rows 0) {
      
mysql_data_seek($KonEra0);
      
$row_KonEra mysql_fetch_assoc($KonEra);
  }
?>
          </select>
        </label></td>
        <td><input type="text" name="Gaia" value="<?php echo $row_Kontsultak['Gaia']; ?>" size="32" /></td>
      </tr>
       
   <?
   $i
++;
   }
   
?>
   </table>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<input type='submit' value='Aktualizatu'>
</form>
Pero no me actualiza, podria alguien explicarme porque no me actualiza?

Gracias de antemano y saludos
  #2 (permalink)  
Antiguo 23/10/2007, 01:48
Avatar de Aken  
Fecha de Ingreso: julio-2004
Ubicación: Barcelona
Mensajes: 267
Antigüedad: 19 años, 9 meses
Puntos: 1
Re: Actualizacion

Donde defines $editFormAction ?? Y que valores coge ?

Saludos.
  #3 (permalink)  
Antiguo 23/10/2007, 02:11
 
Fecha de Ingreso: agosto-2007
Mensajes: 64
Antigüedad: 16 años, 8 meses
Puntos: 0
Re: Actualizacion

Hola,

Este es el $editFormAction que tengo:

Código PHP:
$editFormAction $_SERVER['PHP_SELF'];
if (isset(
$_SERVER['QUERY_STRING'])) {
  
$editFormAction .= "?" htmlentities($_SERVER['QUERY_STRING']);

y lo tengo puesto al principio del codigo.

Gracias y saludos
  #4 (permalink)  
Antiguo 23/10/2007, 03:08
Avatar de Aken  
Fecha de Ingreso: julio-2004
Ubicación: Barcelona
Mensajes: 267
Antigüedad: 19 años, 9 meses
Puntos: 1
Re: Actualizacion

Ponle una pagina de destino... normal y corriente donde ha de ir el resultado... y veras si funciona o no el formulario.

Alomejor es que se te queda vacio...
O haz un echo del $editFormAction... a ver que valor coge

Un saludo...
  #5 (permalink)  
Antiguo 23/10/2007, 03:29
 
Fecha de Ingreso: agosto-2007
Mensajes: 64
Antigüedad: 16 años, 8 meses
Puntos: 0
Re: Actualizacion

Hola,

He hecho un echo del $editFormAction y me ha dado como resultado el nombre de como tengo guardada la pagina.

Este es el codigo de toda la pagina que tengo:

Código PHP:
<?php require_once('Connections/Datuak3.php'); ?>
<?php

$editFormAction 
$_SERVER['PHP_SELF'];
if (isset(
$_SERVER['QUERY_STRING'])) {
  
$editFormAction .= "?" htmlentities($_SERVER['QUERY_STRING']);
}

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Aktualizazioak</title>
<style type="text/css">
<!--
.Estilo1 {
    font-size: 24px;
    font-weight: bold;
}
.Estilo2 {font-size: 16px}
-->
</style>
<link href="FormularioEstilo.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
.Estilo3 {font-size: 24px}
.Estilo7 {font-size: 14px}
-->
</style>
</head>

<body>

<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<form method="post" name="form1" action="<?php echo $editFormAction?>">
<?
mysql_connect
("localhost","root","iturralde");
mysql_select_db("Datuak3");

    for (
$i=1;$i<=10;$i++){ 
      
//para cada uno de los elementos que puede haber en el formulario 
      
if (isset($_POST["IdKontsulta" $i])){ 
         
//es que este registro estaba en el formulario 
         
$id $_POST["IdKontsulta" $i]; 
         
$Data $_POST["KontsultaData" $i];
         
$KontsulEra $_POST["IdKontsultaEra" $i]; 
         
$Gaia $_POST["Gaia" $i];

         
$ssql "Update Kontsultak set KontsultaData='$Data', IdKontsultaEra='$KontsulEra', Gaia='$Gaia' where IdKontsulta=$id"
 
         
$Eje mysql_query($ssql) or die (mysql_error());
         
      } 
    }
  
      
$query_Kontsultak "SELECT * FROM Kontsultak";
      
$Kontsultak mysql_query($query_Kontsultak) or die(mysql_error());
     
      
$query_KonEra "select * from KontsultaEra";
      
$KonEra mysql_query($query_KonEra) or die(mysql_error());
       

?>
    <table width="651" border="1" align="left">
      <tr align="center" valign="baseline">
        <td width="143" nowrap><u><strong>IdKontsulta</strong></u></td>
        <td width="160"><u><strong>KontsultaData</strong></u></td>
        <td width="160"><u><strong>IdKontsultaEra</strong></u></td>
        <td width="160"><u><strong>Gaia</strong></u></td>
      </tr>
      <tr valign="baseline">
    <?
     $i
=1;
     while (
$row_Kontsultak=mysql_fetch_array($Kontsultak)){ 
    
?>     
        <td nowrap align="left"><?php echo $row_Kontsultak['IdKontsulta']; ?></td>
        <td><input type="text" name="KontsultaData" value="<?php echo $row_Kontsultak['KontsultaData']; ?>" size="32" /></td>
        <td><label>
          <select name="IdKontsultaEra" id="IdKontsultaEra">
            <?php
do {  
?>
            <option value="<?php echo $row_KonEra['IdKontsultaEra']?>"<?php if (!(strcmp($row_KonEra['IdKontsultaEra'], $row_Kontsultak['IdKontsultaEra']))) {echo "selected=\"selected\"";} ?>><?php echo $row_KonEra['KontsultaEra']?></option>
            <?php
} while ($row_KonEra mysql_fetch_assoc($KonEra));
  
$rows mysql_num_rows($KonEra);
  if(
$rows 0) {
      
mysql_data_seek($KonEra0);
      
$row_KonEra mysql_fetch_assoc($KonEra);
  }
?>
          </select>
        </label></td>
        <td><input type="text" name="Gaia" value="<?php echo $row_Kontsultak['Gaia']; ?>" size="32" /></td>
      </tr>
       
   <?
   $i
++;
   }
   
?>
   </table>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<input type='submit' value='Aktualizatu'>
</form>
</body>
</html>
<?php
mysql_free_result
($KonEra);
?>
Esque una parte del codigo es el que me a generado DW y otro lo he hecho yo para poder sacar todos los registros y no se si me falta algo o es porque algo que e puesto yo no esta bien. Soy un poco principiante en esto de PHP y no soy capaz de encontrar el fallo.


Gracias de antemano y saludos
  #6 (permalink)  
Antiguo 23/10/2007, 04:21
Avatar de Aken  
Fecha de Ingreso: julio-2004
Ubicación: Barcelona
Mensajes: 267
Antigüedad: 19 años, 9 meses
Puntos: 1
Re: Actualizacion

Que error te da ? (Pegalo aqui) O que es lo que encuentras a faltar que no te hace? Asi sabremos donde mirar antes...

Saludos ;)
  #7 (permalink)  
Antiguo 23/10/2007, 04:34
 
Fecha de Ingreso: agosto-2007
Mensajes: 64
Antigüedad: 16 años, 8 meses
Puntos: 0
Re: Actualizacion

Hola,

No me da ningun error ni nada. Lo modifico le doy a actualizar y me vuelve a poner lo de antes.


y si hago un echo asi:

Código PHP:
for ($i=1;$i<=10;$i++){  
      
//para cada uno de los elementos que puede haber en el formulario  
      
if (isset($_POST["IdKontsulta" $i])){  
         
//es que este registro estaba en el formulario  
         
$id $_POST["IdKontsulta" $i];  
         
$Data $_POST["KontsultaData" $i]; 
         
$KontsulEra $_POST["IdKontsultaEra" $i];  
         
$Gaia $_POST["Gaia" $i]; 

         
$ssql "Update Kontsultak set KontsultaData='$Data', IdKontsultaEra='$KontsulEra', Gaia='$Gaia' where IdKontsulta=$id";  
          
          echo 
"Data: $Data";
       
         
$Eje mysql_query($ssql) or die (mysql_error()); 
          
      }  
     } 
No me saca nada, ni Data. Si hago el echo de $i asi:

Código PHP:
   <? 
   $i
++; 
   echo 
"I: $i";
   } 
   
?>
me saca 2, 3, 4 (tengo tres registro) y aunque inicialice el $i a 0 no me funciona.

Gracias y Saludos
  #8 (permalink)  
Antiguo 24/10/2007, 23:49
 
Fecha de Ingreso: agosto-2007
Mensajes: 64
Antigüedad: 16 años, 8 meses
Puntos: 0
Re: Actualizacion

Hola a todos,

Al final ya solucione el problema. Despues de volverme medio loco lo consegui. Aqui os dejo el codigo a ver si os sirve para algo.

Código PHP:
<?php require_once('Connections/Datuak3.php'); ?> 
<?php 

$editFormAction 
$_SERVER['PHP_SELF']; 
if (isset(
$_SERVER['QUERY_STRING'])) { 
  
$editFormAction .= "?" htmlentities($_SERVER['QUERY_STRING']); 


?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 
<title>Proba</title> 
<style type="text/css"> 
<!-- 
.Estilo1 { 
    font-size: 24px; 
    font-weight: bold; 

.Estilo2 {font-size: 16px} 
--> 
</style> 
<link href="FormularioEstilo.css" rel="stylesheet" type="text/css" /> 
<style type="text/css"> 
<!-- 
.Estilo3 {font-size: 24px} 
.Estilo7 {font-size: 14px} 
--> 
</style> 
</head> 

<body> 

<p>&nbsp;</p> 
<p>&nbsp;</p> 
<p>&nbsp;</p> 
<form method="post" name="form1" action="<?php echo $editFormAction?>"> 
<? 
mysql_connect
("localhost","root","iturralde"); 
mysql_select_db("Datuak3"); 

    for (
$i=1;$i<=1500;$i++){     
      
//para cada uno de los elementos que puede haber en el formulario  
      
if (isset($_POST["IdKontsulta" $i])){         
         
//es que este registro estaba en el formulario  
         
$id $_POST["IdKontsulta" $i];  
         
$Data $_POST["KontsultaData" $i]; 
         
$KontsulEra $_POST["IdKontsultaEra" $i];  
         
$Gaia $_POST["Gaia" $i]; 

         
$ssql "Update Kontsultak set KontsultaData='$Data', IdKontsultaEra='$KontsulEra', Gaia='$Gaia' where IdKontsulta=$id";  
  
         
$Eje mysql_query($ssql) or die (mysql_error()); 
          
      }  
    } 
   
      
$query_Kontsultak "SELECT * FROM Kontsultak"
      
$Kontsultak mysql_query($query_Kontsultak); 
      
      
$query_KonEra "select * from KontsultaEra"
      
$KonEra mysql_query($query_KonEra); 
      
$row_KonEra mysql_fetch_array($KonEra); 

    
      echo 
"<table width=651 border=1 align=left>"
      echo 
"<tr align=center valign=baseline>"
      echo 
"<td width=143 nowrap><u><strong>IdKontsulta</strong></u></td>"
      echo 
"<td width=160><u><strong>KontsultaData</strong></u></td>"
      echo 
"<td width=160><u><strong>IdKontsultaEra</strong></u></td> ";
      echo 
"<td width=160><u><strong>Gaia</strong></u></td>";
      echo 
"</tr>"

      
$i=1
      while (
$row_Kontsultak=mysql_fetch_array($Kontsultak)){  
         
        echo 
"<td><input type=text name='IdKontsulta$i' value='" $row_Kontsultak['IdKontsulta'] . "' readonly=true/></td>";
        echo 
"<td><input type=text name='KontsultaData$i' value='" $row_Kontsultak['KontsultaData'] . "' /></td>"
        echo 
"<td><select name='IdKontsultaEra$i'>"
            
        do {   
      
?> 
            <option value="<?php echo $row_KonEra['IdKontsultaEra']?>"<?php if (!(strcmp($row_KonEra['IdKontsultaEra'], $row_Kontsultak['IdKontsultaEra']))) {echo "selected=\"selected\"";} ?>><?php echo $row_KonEra['KontsultaEra']?></option> 
        <?php 
        
} while ($row_KonEra mysql_fetch_assoc($KonEra)); 
        
$rows mysql_num_rows($KonEra); 
        if(
$rows 0) { 
            
mysql_data_seek($KonEra0); 
        
$row_KonEra mysql_fetch_assoc($KonEra); 
        } 

         echo 
"</select>"
         echo 
"</td>"
         echo 
"<td><input type=text name='Gaia$i' value='" $row_Kontsultak['Gaia'] . "' /></td>"
         echo 
"</tr>"
        
   
   
$i++; 
   } 
   
?> 
   </table> 
<p>&nbsp;</p> 
<p>&nbsp;</p> 
<p>&nbsp;</p> 
<p>&nbsp;</p> 
<p>&nbsp;</p> 
    <p>
      <input type="hidden" name="NAN" value="<?php echo $row_Kontsultak['NAN']; ?>">
  </p>
    <p>
      <input type='submit' value='Aktualizatu'> 
    </p>
</form> 
</body> 
</html> 
<?php 
mysql_free_result
($KonEra); 
?>

Gracias a todos por vuestro interes en mi problema.
Ya nos veremos por aqui
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 00:06.