Foros del Web » Programando para Internet » PHP »

Insert en PHP

Estas en el tema de Insert en PHP en el foro de PHP en Foros del Web. Hola amigos, tengo una aplicacion PHP y la estoy colocando en marcha en un servidor. Se me presento un problema por que estoy tratando de ...
  #1 (permalink)  
Antiguo 11/12/2010, 23:14
 
Fecha de Ingreso: enero-2010
Ubicación: Colombia
Mensajes: 238
Antigüedad: 14 años, 3 meses
Puntos: 2
Insert en PHP

Hola amigos, tengo una aplicacion PHP y la estoy colocando en marcha en un servidor. Se me presento un problema por que estoy tratando de insertar unos campos a una tabla de mi base de datos pero el oprimir el boton 'Enviar' no me inserta nada ni hace lo que le he programado, aqui adjunto mi codigo,,


<?
if ($_POST["enviar"]){
if ($documento1=='si'){
if ($documento2=='si'){
if ($documento3=='si'){
if ($documento4=='si'){
if ($documento5=='si'){
if ($documento6=='si'){
if ($documento7=='si'){
if ($documento8=='si'){
$sql="insert into radicacion (cod_fun,fecha_rad,hora_rad,cod_usuario,cod_funcio nario,cod_estado) values
('".$_POST["cod_fun"]."',NOW(),NOW(),'".$_POST["cod_usuario"]."','".$_POST["cod_funcionario"]."','".$_POST["cod_estado"]."')";
if ($result=mysql_query ($sql,$link)){
$id = mysql_insert_id($link);
//realizamos la transaccion al logs pazra la tabla radicacion
$sql_log="insert into logs_transacciones (fecha_tran,hora_tran,cod_funcionario,cod_for,cod_ accion)values
(NOW(),NOW(),'$cod_funcionario','61','7')";
$resultado_1 = mysql_query($sql_log,$link);
echo '<script language="Javascript">alert("Documentos completos. Genere el formato de radicacion en PDF pulsando el link que se encuentra al final de la pantalla"); </script>';
echo "<a href=boleta2pdf.php?cc=$id target=_blank><font color=#0000FF> <center> Generar formato de radicaci&oacute;n </center></a>";
}}}}}}}}
}

}
?>


CUando se pulsa el boton 'Enviar' hago una serie de condiciones y si todos los campos estan con valor verdadero entonces me debe insertar unos datos y generar un link, que bueno, eso ya son procesos que debe hacer el aplicativo, pero no logro entender por que no me inserta, Lo raro es que en local si me funciona, ¿sera que sobra o falta alguna comilla?
  #2 (permalink)  
Antiguo 11/12/2010, 23:44
 
Fecha de Ingreso: julio-2010
Ubicación: Entre la notebook y el respaldo de la silla
Mensajes: 4
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Insert en PHP

1.- De donde salen las variables $documento1, $documento2, ...? Si esos son los nombres de campos dentro del <form>, por ejemplo
Código HTML:
Ver original
  1. <input type="hidden" value="si" />
Deberias recoger dichos valores como

Código PHP:
Ver original
  1. $doc1 = $_POST['$documento1'];
  2. $doc2 = $_POST['$documento2'];
  #3 (permalink)  
Antiguo 11/12/2010, 23:58
 
Fecha de Ingreso: enero-2010
Ubicación: Colombia
Mensajes: 238
Antigüedad: 14 años, 3 meses
Puntos: 2
Respuesta: Insert en PHP

Si claro que debo tener un formulario en donde evaluo los campos documento1, documento2, etc...

Por ejemplo:


El formulario &uacute;nico nacional para la solicitud de licencias adoptado mediante la Resoluci&oacute;n 0984 de 2005 del Ministerio
de Ambiente, Vivienda y Desarrollo Territorial o la norma que la adicione, modifique o sustituya, debidamente
diligenciado por el solicitante.</p><td bgcolor=#F2F5A9>
<select name="documento2" id="or" onchange="Combos2(this)">
<option value=" "></option>
<option value="no">No</option>
<option value="si">Si</option>
</select></td><td>

Tengo un listado de documentos y al frente de cada documento hay un select que el usuario debe seleccionar un SI o un NO, y cuando termine oprime el boton enviar y se generan unos procesos que el usuario no se da de cuenta, en conclusion, lo que debe hacer cuando se oprime el boton ''enviar' es insertar esos datos mas otros campos que se encuentran ocultos en una tabla de mi base de datos, pero la verdad no me inserta nada, debe ser alguna comilla q puede faltar o sobrar, pero es que he intentado mucho y no doy con el error, por favor si alguien me puede colaborar se lo agradeceria..
  #4 (permalink)  
Antiguo 13/12/2010, 16:39
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: Insert en PHP

Tu codigo es muy raro. Entendes la logica de todo esto?

Código PHP:
Ver original
  1. if ($_POST["enviar"]){
  2. if ($documento1=='si'){
  3. if ($documento2=='si'){
  4. if ($documento3=='si'){
  5. if ($documento4=='si'){
  6. if ($documento5=='si'){
  7. if ($documento6=='si'){
  8. if ($documento7=='si'){
  9. if ($documento8=='si'){

Yo lo que veo es que ya el primer condicional está mal encarado. Por qué esperarías un true false de $_POST["enviar"]? No, no.

Luego, todas las demás variables que son? Vienen de un formulario? No lo sabemos....

Estas fallando en el manejo de errores al tener un listado de condicionales así, dicho sea de paso.
  #5 (permalink)  
Antiguo 19/12/2010, 20:36
 
Fecha de Ingreso: julio-2010
Ubicación: Entre la notebook y el respaldo de la silla
Mensajes: 4
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Insert en PHP

Primero, si tan solo tiene que elegir entre "si" y "no", porque no usas un checkbox?
Segundo, si son 9 documentos, porque no usas un array?

Código HTML:
Ver original
  1. <form action="paso2.php" method="post">
  2.     <p><input type="checkbox" name="docu[]" value="si" /> Documento 1</p>
  3.     <p><input type="checkbox" name="docu[]" value="si" /> Documento 2</p>
  4.     <p><input type="checkbox" name="docu[]" value="si" /> Documento 3</p>
  5.     <p><input type="checkbox" name="docu[]" value="si" /> Documento 4</p>
  6. </form>
Obviamente, con los 9 documentos, yo puse 4 para que te des cuenta.
Luego, en paso2.php

Código PHP:
Ver original
  1. $los_doc = $_POST['docu'];
  2.  
  3. foreach($los_doc as $indice_doc => $selec_doc)
  4. {
  5.     echo "docu[".$indice_doc."] = ".$selec_doc;
  6. }

PD: No probe el codigo, lo hice "calculando" nomas, pero fijate y contanos

Etiquetas: insert
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 08:06.