Foros del Web » Programando para Internet » PHP »

Problema con formulario y al insertar los datos

Estas en el tema de Problema con formulario y al insertar los datos en el foro de PHP en Foros del Web. Buenas. Resulta que tengo un desplegable con varias empresas. Elijo una empresa y accedo a un menú. A continuación elijo una opción que es "gestor ...
  #1 (permalink)  
Antiguo 12/11/2009, 12:06
 
Fecha de Ingreso: septiembre-2005
Mensajes: 379
Antigüedad: 18 años, 7 meses
Puntos: 0
Problema con formulario y al insertar los datos

Buenas. Resulta que tengo un desplegable con varias empresas. Elijo una empresa y accedo a un menú. A continuación elijo una opción que es "gestor de tareas" para añadir nuevas tareas. Pues bien...no se por qué cuando accedo a ese gestor de tareas automaticamente me inserta en la base de datos el identificador de empresa que yo he seleccionado en el desplegable sin poder rellenar antes el formulario de nueva tarea.

Lo normal sería que yo rellenara los campos del formulario de nueva tarea, es decir: usuario, tarea, tiempo, fecha....y cuando pulse yo "insertar tarea" se guarde todo en la base de datos junto al identificador de la sociedad (id_soci).

Pues no...no consigo hacerlo funcionar y se inserta el "id_soci" correctamente pero sin poder haber rellenado el formulario previamente.

El código es el siguiente:

Cita:

<?php

$ruta=$_GET['pob1'];

require_once('funciones.php');


encabezado_html('INSERTAR NUEVA TAREA');
$id=$_GET['id'];
form_mostrar_tarea();

?>

<?php

function form_mostrar_tarea($vino = '')


{

$edit = is_array($vino);


?>


<form method=post
action="<?php echo $edit?'editar_tarea.php':'insertar_tarea.php';?>">
<table border=0>




<tr>
<td></td>
<td><input type=hidden name=id_tarea
value="<?php echo $edit?$vino['id_tarea']:''; ?>"></td>
</tr>


<tr>
<td></td>
<td><input type=hidden name=id_soci
value="<?php echo $edit?$vino['$ruta']:''; ?>"></td>
</tr>




<tr>
<td>Usuario:</td>
<td><input type=text name=usuario
value="<?php echo $edit?$vino['usuario']:''; ?>"></td>
</tr>
<tr>
<td>Tarea:</td>
<td><input type=text name=tarea maxlength=500 size=100
value="<?php echo $edit?$vino['tarea']:''; ?>"></td>
</tr>

<tr>
<td>Tiempo:</td>
<td><input type=text name=tiempo
value="<?php echo $edit?$vino['tiempo']:''; ?>"> </td>
</tr>

<tr>
<td>Fecha:</td>
<td><input type=text name=fecha
value="<?php echo $edit?$vino['fecha']:''; ?>"> </td>
</tr>




<tr>
<td <?php if (!$edit) echo 'colspan=2'; ?> align=center>
<?php
if ($edit)

echo '<input type=hidden name=antiguovinosid
value="'.$vino['id_tarea'].'">';
?>
<input type=submit
value="<?php echo $edit?'Actualizar':'Agregar'; ?> tarea">
</form></td>
<?php
if ($edit)
{
echo '<td>';
echo '<form method=post action="eliminar_tarea.php">';
echo '<input type=hidden name=ide_tarea
value="'.$vino['id_tarea'].'">';
echo '<input type=submit
value="Eliminar tarea">';
echo '</form></td>';
}
?>
</td>
</tr>
</table>
</form>

<?php
}

?>





<?php

require_once('funciones.php');



$id_tarea = $HTTP_POST_VARS['id_tarea'];
$id_soci = $ruta;
$usuario = $HTTP_POST_VARS['usuario'];
$tarea = $HTTP_POST_VARS['tarea'];
$tiempo = $HTTP_POST_VARS['tiempo'];
$fecha = $HTTP_POST_VARS['fecha'];



?> <h3> <?php



if(insertar_tarea($id_tarea, $id_soci, $usuario, $tarea, $tiempo, $fecha))

echo "Tarea '".stripslashes($tarea)."' fue agregada a la base de datos.<br />";

else

echo "Tarea'".stripslashes($tarea).

"' No puede ser agregada a la base de datos.<br />";

?>
<form><input type=button value="<< Volver" onClick="history.go(-1);"></form>





<?php

function insertar_tarea($id_tarea, $id_soci, $usuario, $tarea, $tiempo, $fecha)



{



$con = conexion_bd();


$query = "select *
from tareas
where id_tarea='$id_tarea'";

$result = mysql_query($query);
if (!$result || mysql_num_rows($result)!=0)
return false;


$query = "insert into tareas values
('$id_tarea', '$id_soci', '$usuario', '$tarea', '$tiempo', '$fecha')";





$result = mysql_query($query);
if (!$result)
return false;
else
return true;
}



?>
Lo he metido todo en el mismo script de php. Espero puedan echarme una mano. Gracias.
  #2 (permalink)  
Antiguo 12/11/2009, 12:32
Avatar de Carxl
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: Bogotá
Mensajes: 2.993
Antigüedad: 17 años, 8 meses
Puntos: 70
Respuesta: Problema con formulario y al insertar los datos

Bueno comencemos por recomendaciones:

1. Cambia HTTP_POST_VARS por POST.
2. A cada variable que esté involucrada en el insert hazle un var_dump para que sepas que comportamiento tiene variable.

Comienza por eso...


Saludos
__________________
Hay 10 tipos de personas, los que entienden binario y los que no. (Anónimo)
www.programandoweb.com
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 13:01.