Foros del Web » Programando para Internet » PHP »

Problema al actualizar los datos!!

Estas en el tema de Problema al actualizar los datos!! en el foro de PHP en Foros del Web. Hola, tengo un problema que le he dado 100 vueltas y no encuentra explicacion. Tengo un formulario para actualizar resgitros de la base de datos, ...
  #1 (permalink)  
Antiguo 28/03/2007, 06:17
Avatar de alllebor  
Fecha de Ingreso: septiembre-2006
Mensajes: 295
Antigüedad: 17 años, 7 meses
Puntos: 1
Problema al actualizar los datos!!

Hola, tengo un problema que le he dado 100 vueltas y no encuentra explicacion.
Tengo un formulario para actualizar resgitros de la base de datos, en dicho formulario se carga todos los datos del registro elegido para modificar, el problema es que en los campos del formulario del tipo: <input value="<? echo $referencia;?>" name="codigo" type="text" > y los selects, cuando le paso la informacion al script para que actualice el registro solo me coje la primera palabra de lo que haya en dichos campos, por ejemplo:

tipo de vivienda: casa de campo
Poblacion: El perelló

Pues cuando actualizo en tipo de vivienda solo me aparece en tipo casa y en poblacion El

Me he dado cuenta que es problema del formulario por que en el script he hecho un
echo 'POBLACIO '.$_POST["poblacion"];
y me sale solo la primera palabra, no lo entiendo

He mirado el codigo y esta todo bien, gasta casi casi el mismo script que para insertar y funciona bien.

ALguna idea??
Ayudarme por favor!!
__________________
Quien no me pregunta no se entera!!

Última edición por alllebor; 28/03/2007 a las 06:29
  #2 (permalink)  
Antiguo 28/03/2007, 07:00
Avatar de davico_tico  
Fecha de Ingreso: marzo-2007
Mensajes: 27
Antigüedad: 17 años
Puntos: 0
Pregunta Re: Problema al actualizar los datos!!

Podrias mostrar tu codigo?.
  #3 (permalink)  
Antiguo 28/03/2007, 07:07
 
Fecha de Ingreso: julio-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.304
Antigüedad: 18 años, 9 meses
Puntos: 6
Re: Problema al actualizar los datos!!

Muestra el input correspondiente a poblacion, completo
__________________
Federico.

Mi página: www.jourmoly.com.ar
  #4 (permalink)  
Antiguo 28/03/2007, 09:16
Avatar de alllebor  
Fecha de Ingreso: septiembre-2006
Mensajes: 295
Antigüedad: 17 años, 7 meses
Puntos: 1
Re: Problema al actualizar los datos!!

Bueno aqui os pongo el codigo del formulario donde carga el registro a modificar.


Código HTML:
<form  method="post" action="actualizar.php" enctype="multipart/form-data" al>
           
            <table align="center">
			         <tr>
                  <td width="95"><div align="right"></div></td>
                  <td width="567"><input name="id" type="hidden" id="id" value="<? echo $id;?> " size="15" maxlength="15" /></td>
                </tr>
                <tr>
                  <td><div align="right"><strong>C&oacute;digo</strong>:</div></td>
                  <td width="567"><input value="<? echo $referencia;?>" name="codigo" type="text" id="codigo" size="15" maxlength="15" /></td>
                </tr>
				<tr>
                  <td height="30"><div align="right"><strong>Tipo:</strong></div></td>
                  <td width="567">
				  <?php 

            
        //$query = "SELECT pueblo FROM poblacion "; 
        $restipo = mysql_query( "SELECT tipo FROM tipo "); 
       
         
        echo "<select class='combo' id='tipo' name='tipo' onChange='cargaContenido(4)'>";
		
        echo "<option selected value=".$tipo.">".$tipo."</option>"; 
        while($reg = mysql_fetch_array($restipo)) 
        { 
            echo "<option value='".$reg[0]."'>".$reg[0]."</option>"; 
        } 
         
        echo "</select>"; 
	mysql_free_result($restipo); 
    
    
?> </td>
              </tr>
				
		 <tr>
          <td><div align="right"><strong>Precio:</strong></div></td>
          <td width="567"><input name="precio" value="<? echo $precio;?>" type="text" id="precio" size="15" maxlength="8" /></td>
        </tr>
		<tr>
                  <td height="30"><div align="right"><strong>Poblaci&oacute;n:</strong></div></td>
                  <td width="567">
				  <?php 
            
        //$query = "SELECT pueblo FROM poblacion "; 
        $res = mysql_query( "SELECT pueblo FROM poblacion "); 
       
         
        echo "<select class='combo' id='poblacion' name='poblacion' onChange='cargaContenido(4)'>"; 
        echo "<option selected value=".$poblacion.">".$poblacion."</option>"; 
        while($reg = mysql_fetch_array($res)) 
        { 
            echo "<option value='".$reg[0]."'>".$reg[0]."</option>"; 
        } 
         
        echo "</select>"; 
	mysql_free_result($res); 
    mysql_close($conect); 
    
?> </td>
              </tr>
        <tr>
          <td height="54"><div align="right"><strong>Descripci&oacute;n:</strong></div></td>
          <td><textarea id="cuerpo" name="cuerpo" cols="70" rows="6" ><? echo $descripcion;?></textarea></td>
        </tr>
</table>
 <input type="submit" name="accion" value="Actualizar"/>
		</p>
      </div>
	   </form> 
Solo deciros que el problema me da con los select que se generan apartir de una consulta. Los selects poblacion y tipo.

Muchas gracias!!
__________________
Quien no me pregunta no se entera!!
  #5 (permalink)  
Antiguo 28/03/2007, 12:38
Avatar de davico_tico  
Fecha de Ingreso: marzo-2007
Mensajes: 27
Antigüedad: 17 años
Puntos: 0
Re: Problema al actualizar los datos!!

Holas.
Por lo que veo, estas utilizando mal la función mysql_fetch_array().
Por ejemplo: cuando utilizas esta función debería ser asi:

Código PHP:
$resultado=mysql_query("select nombredelcampo from tabla");
$reg=mysql_fetch_array($resultado);
$campo=$reg["nombredelcampo"]; 
Osea que debes de utilizar como indice del array de resultados, el nombre del campo que ocupas en tu query.
Suerte...
  #6 (permalink)  
Antiguo 29/03/2007, 00:31
Avatar de alllebor  
Fecha de Ingreso: septiembre-2006
Mensajes: 295
Antigüedad: 17 años, 7 meses
Puntos: 1
Re: Problema al actualizar los datos!!

Como lo tengo me carga bien, quiero decir que cuando eleijo un registro para modificar, en el formulario me carga el nombre de poblacion o de tipo de vivienda completos (El perelló y Casa de campo respectivamente) pero al enviar el formulario al script, solo envia la primera palabra que hay en esos campo, si ese campo no lo modifico.

Voy a explicarme mejor: Modifico un registro que tiene
tipo=casa de campo
poblacion=el perello

Si cambio la población por alcala de henares pues al actualizar se me queda de la siguiente manera:
Tipo=casa
poblacion=Alcala de Henares


Ahora vuelvo a editar el mismo regitro y cambio y lo pongo así:
Tipo=Bajo comercial
la poblacion lo dejo como estaba (Alcala de Henares)
Pues despues de actualizar el registro tengo lo siguiente:
Tipo=Bajo comercial
Poblacio=Alcala


O sea que coge la primera letra del campo que no modifico.
Por que?? Ayudarme porfavor!!
__________________
Quien no me pregunta no se entera!!
  #7 (permalink)  
Antiguo 29/03/2007, 03:45
Avatar de alllebor  
Fecha de Ingreso: septiembre-2006
Mensajes: 295
Antigüedad: 17 años, 7 meses
Puntos: 1
Re: Problema al actualizar los datos!!

holahola me ha dado la solución!! El error estaba que faltaba unas comillas


Cita:
Código PHP:
echo "<option selected value=".$tipo.">".$tipo."</option>";

y deberías de cambiarlo por:


Código PHP:
echo '<option selected value="'.$tipo.'">"'.$tipo.'"</option>';
__________________
Quien no me pregunta no se entera!!
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 22:37.