Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] solo me inserta algunos valores en la BD

Estas en el tema de solo me inserta algunos valores en la BD en el foro de PHP en Foros del Web. Buenas tardes familia, les vengo a preguntar una duda, tengo un formulario bastante extenso y la verdad que no me da problemas pero en la ...
  #1 (permalink)  
Antiguo 25/03/2015, 06:51
 
Fecha de Ingreso: febrero-2008
Mensajes: 49
Antigüedad: 14 años, 3 meses
Puntos: 0
solo me inserta algunos valores en la BD

Buenas tardes familia, les vengo a preguntar una duda, tengo un formulario bastante extenso y la verdad que no me da problemas pero en la base de datos solo me inserta algunos datos y otros no. por ejemplo, provincia no me lo inserta y otros nombres si, me podeis ayudar? aqui les dejo el codigo un saludo

Código PHP:
<form method="post" action="add.php">
                        <
table >
                            <
tr>
                                <
td><label for="nombre">NOMBRES</label> </td>
                                <
td><textarea name="nombre" rows="1" cols="30"></textarea> </td>
                            </
tr>
                            <
tr>
                                <
td><label for="otroNombre">OTROS NOMBRES (Publicación donde aparece)</label> </td>
                                <
td><textarea name="otroNombre" rows="10" cols="50"></textarea> </td>
                            </
tr>
                            <
tr>
                                <
td><label for="siglas">SIGLAS</label> </td>
                                <
td><textarea name="siglas" rows="1" cols="20"></textarea> </td>
                            </
tr>
                            <
tr>
                                <
td><label for="provincia">PROVINCIA</label> </td>
                                <
td><textarea name="provincia" rows="1" cols="20"></textarea> </td>
                            </
tr>
                            <
tr>
                                <
td><label for="terminoMunicipal">TERMINO MUNICIPAL</label>  </td>
                                <
td><textarea name="terminoMunicipal" rows="1" cols="40"></textarea>  </td>
                            </
tr>
                            <
tr>
                                <
td><label for="grupoGeologico">GRUPO GEOLÓGICO</label>  </td>
                                <
td><textarea name="grupoGeologico" rows="1" cols="40"></textarea>  </td>
                            </
tr>
                            <
tr>
                                <
td><label for="formacion">FORMACIÓN</label>  </td>
                                <
td><textarea name="formacion" rows="1" cols="40"></textarea>  </td>
                            </
tr>
                            <
tr>
                                <
td><label for="edad">EDAD</label>  </td>
                                <
td><textarea name="edad" rows="1" cols="40"></textarea>  </td>
                            </
tr>
                            <
tr>
                                <
td><label for="litologia">LITOLOGÍA</label>  </td>
                                <
td><textarea name="litologia" rows="5" cols="30"></textarea>  </td>
                            </
tr>
                            <
tr>
                                <
td><label for="ambienteSedimentario">AMBIENTE SEDIMENTARIO</label>  </td>
                                <
td><textarea name="ambienteSedimentario" rows="5" cols="30"></textarea>  </td>
                            </
tr>
                            <
tr>
                                <
td><label for="niveles">NIVELES</label>  </td>
                                <
td><textarea name="niveles" rows="1" cols="20"></textarea> </td>
                            </
tr>
                            <
tr>
                                <
td><label for="icnitas">ICNITAS</label>  </td>
                                <
td><textarea name="icnitas" rows="1" cols="40"></textarea> </td>
                            </
tr>
                            <
tr>
                                <
td><label for="icnotaxonomia">ICNOTAXONOMÍA (Según Díaz-Martínez2013)</label>  </td>
                                <
td><textarea name="icnotaxonomia" rows="5" cols="20"></textarea>  </td>
                            </
tr>
                            <
tr>
                                <
td><label for="fosilesAcompañados">FOSILES ACOMPAÑANTES (Publicación dónde aparece)</label>  </td>
                                <
td><textarea name="fosilesAcompañados" rows="5" cols="30"></textarea>  </td>
                            </
tr>
                            <
tr>
                                <
td><label for="estructurasSedimentarias">ESTRUCTURAS SEDIMENTARIAS</label>  </td>
                                <
td><textarea name="estructurasSedimentarias" rows="5" cols="20"></textarea> </td>
                            </
tr>
                            <
tr>
                                <
td><label for="numHuellas">Nº HUELLAS</label>  </td>
                                <
td><textarea name="numHuellas" rows="1" cols="20"></textarea>  </td>
                            </
tr>
                            <
tr>
                                <
td><label for="numRastros">Nº RASTROS</label>  </td>
                                <
td><textarea name="numRastros" rows="1" cols="20"></textarea>  </td>
                            </
tr>
                            <
tr>
                                <
td><label for="comportamiento">COMPORTAMIENTO</label>  </td>
                                <
td><textarea name="comportamiento" rows="10" cols="50"></textarea>  </td>
                            </
tr>
                            <
tr>
                                <
td><label for="conservacion">ESTADO DE CONSERVACIÓN</label>  </td>
                                <
td><textarea name="conservacion" rows="1" cols="40"></textarea>  </td>
                            </
tr>
                            <
tr>
                                <
td><label for="estadoPatrimonial">ESTADO PATRIMONIAL</label>  </td>
                                <
td><textarea name="estadoPatrimonial" rows="1" cols="20"></textarea>  </td>
                            </
tr>
                            <
tr>
                                <
td><label for="vegetacionAcompañada">VEGETACIÓN ACOMPAÑANTE</label>  </td>
                                <
td><textarea name="vegetacionAcompañada" rows="10" cols="50"></textarea>  </td>
                            </
tr>
                            <
tr>
                                <
td><label for="comentariosPatrimoniales">COMENTARIOS PATRIMONIALES</label>  </td>
                                <
td><textarea name="comentariosPatrimoniales" rows="10" cols="50"></textarea>  </td>
                            </
tr>
                            <
tr>
                                <
td><label for="firmante">FIRMANTE FICHA GOBLA RIOJA FECHA</label>  </td>
                                <
td><textarea name="firmante" rows="10" cols="50"></textarea>  </td>
                            </
tr>
                            <
tr>
                                <
td><label for="bibliografia">BIBLIOGRAFÍA PRINCIPAL</label>  </td>
                                <
td><textarea name="bibliografia" rows="10" cols="50"></textarea> </td>
                            </
tr>
                            <
tr>
                                <
td colspan="2"><input type="submit" value="Añadir a la Base de datos"/> </td>
                            </
tr>
                        </
table>
                    </
form
  #2 (permalink)  
Antiguo 25/03/2015, 06:59
Avatar de NueveReinas  
Fecha de Ingreso: septiembre-2013
Ubicación: No tan Buenos Aires
Mensajes: 1.101
Antigüedad: 8 años, 8 meses
Puntos: 145
Respuesta: solo me inserta algunos valores en la BD

Esto sería más fácil si usases el Highlight del foro y nos copies también el add.php

__________________
¿Te sirvió la respuesta? Deja un +1
  #3 (permalink)  
Antiguo 25/03/2015, 07:05
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 14 años, 6 meses
Puntos: 2658
Respuesta: solo me inserta algunos valores en la BD

Ok... ¿Y cómo verificas que efectivamente están llegando los datos al sript PHP donde realizas la inserción?
Porque lo primero sería precisamente ver qué datos no llegan, y recién entonces recorrer e camino inverso y verificar qué puede hacer que no lleguen.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 25/03/2015 a las 07:10
  #4 (permalink)  
Antiguo 25/03/2015, 07:09
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 14 años, 1 mes
Puntos: 2534
Respuesta: solo me inserta algunos valores en la BD

Pues claro, que leyendo el HTML vamos a adivinar cómo está escrito tu script en PHP y vamos a decirte exactamente el problema.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 25/03/2015, 14:25
 
Fecha de Ingreso: febrero-2008
Mensajes: 49
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: solo me inserta algunos valores en la BD

disculpas, se me colo pegar el php aquí os lo dejo. gracias por el consejo del highlight
Código PHP:
Ver original
  1. <?php
  2.    
  3.         session_start();
  4.            
  5.             // Controlo si el usuario está logueado
  6.             if (!isset($_SESSION['nombre']))
  7.             {
  8.                 echo"Debes estar logueado para acceder aquí.";
  9.             }
  10.             elseif($_SESSION['rol'] == "administrador" || $_SESSION['rol'] == "redactor")
  11.             {  
  12.                 //pasamos parametros
  13.                 $nombre = htmlentities(addslashes($_POST['nombre']));
  14.                 $otroNombre = htmlentities(addslashes($_POST['otroNombre']));
  15.                 $siglas = htmlentities(addslashes($_POST['siglas']));
  16.                 $provincia = $_POST['provincia'];
  17.                 $terminoMunicipal = htmlentities(addslashes($_POST['terminoMunicipal']));
  18.                 $grupoGeologico = htmlentities(addslashes($_POST['grupoGeologico']));
  19.                 $formacion = htmlentities(addslashes($_POST['formacion']));
  20.                 $edad = htmlentities(addslashes($_POST['edad']));
  21.                 $litologia = htmlentities(addslashes($_POST['litologia']));
  22.                 $ambienteSedimentario = htmlentities(addslashes($_POST['ambienteSedimentario']));
  23.                 $niveles = htmlentities(addslashes($_POST['niveles']));
  24.                 $icnitas = htmlentities(addslashes($_POST['icnitas']));
  25.                 $icnotaxonomia = htmlentities(addslashes($_POST['icnotaxonomia']));
  26.                 $fosilesAcompañados = htmlentities(addslashes($_POST['fosilesAcompañados']));
  27.                 $estructurasSedimentarias = htmlentities(addslashes($_POST['estructurasSedimentarias']));
  28.                 $numHuellas = htmlentities(addslashes($_POST['numHuellas']));
  29.                 $numRastros = htmlentities(addslashes($_POST['numRastros']));
  30.                 $comportamiento = htmlentities(addslashes($_POST['comportamiento']));
  31.                 $conservacion = htmlentities(addslashes($_POST['conservacion']));
  32.                 $estadoPatrimonial = htmlentities(addslashes($_POST['estadoPatrimonial']));
  33.                 $vegetacionAcompañada = htmlentities(addslashes($_POST['vegetacionAcompañada']));
  34.                 $comentariosPatrimoniales = htmlentities(addslashes($_POST['comentariosPatrimoniales']));
  35.                 $firmante = htmlentities(addslashes($_POST['firmante']));
  36.                 $bibliografia = htmlentities(addslashes($_POST['bibliografia']));
  37.                
  38.                 //empezamos con las condiciones
  39.                
  40.                 if(!isset($nombre) || !isset($provincia) || !isset($terminoMunicipal) || !isset($grupoGeologico) || !isset($edad) || !isset($litologia) || !isset($ambienteSedimentario)
  41.                     || !isset($niveles) || !isset($icnitas) || !isset($conservacion) || !isset($estadoPatrimonial) || !isset($vegetacionAcompañada) ||
  42.                     !isset($firmante) || !isset($bibliografia))
  43.                 {
  44.                     echo "Rellena todos los campos obligatorios. Hay parametros sin enviar";
  45.                 }
  46.                 elseif($nombre = '' || $provincia = '' || $terminoMunicipal = '' || $grupoGeologico = '' || $edad = '' || $litologia = '' || $ambienteSedimentario = '' || $niveles = '' ||
  47.                 $icnitas = '' || $conservacion = '' ||
  48.                 $estadoPatrimonial = '' || $vegetacionAcompañada = '' || $firmante = '' || $bibliografia = '' )
  49.                 {
  50.                     echo "Rellena todos los campos obligatorios. Faltan datos";
  51.                 }
  52.                 else
  53.                 {
  54.                
  55.                     //SI todo es CORRECTO añadimos al usuario a la BBDD
  56.                    
  57.                     include("../../../mysql.inc.php");
  58.                    
  59.                     conecta($c);
  60.                    
  61.                     mysqli_select_db($c,"dbyir");
  62.                    
  63.                     $sql="insert into yir values(0, 0, '$nombre', '$otroNombre', '$siglas', '$provincia', '$terminoMunicipal', '$grupoGeologico', '$formacion', '$edad', '$litologia',
  64.                         '$ambienteSedimentario', '$niveles', '$icnitas', '$icnotaxonomia', '$fosilesAcompañados', '$estructurasSedimentarias', '$numHuellas', '$numRastros', '$comportamiento',
  65.                             '$conservacion', '$estadoPatrimonial', '$vegetacionAcompañada', '$comentariosPatrimoniales', '$firmante', '$bibliografia')";
  66.                    
  67.                     $resultado = mysqli_query($c,$sql);
  68.                    
  69.                     if ($resultado)
  70.                     {
  71.                         echo "Registro realizado.<br/>";
  72.                    
  73.                         echo " PROVINCIA: $provincia";
  74.                         echo "<a href='../../../menu.php'> Inicio </a>";
  75.                        
  76.                     }
  77.                     else
  78.                     {
  79.                         $error=mysqli_error($c);       
  80.                         echo $error;
  81.                     }
  82.                    
  83.                     mysqli_close($c);
  84.                 }
  85.                    
  86.                
  87.             }else{
  88.                 echo "debes ser administrador o redactor para acceder aquí.";
  89.             }
  90.        
  91.     ?>
  #6 (permalink)  
Antiguo 25/03/2015, 15:00
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 13 años, 10 meses
Puntos: 416
Respuesta: solo me inserta algunos valores en la BD

Es facil, estás usando "=" para comparar en el elseif, cuando debería ser "==". El "=" es de igualación/asignación, por los que a las variables se les está asignando un valor en blanco.

elseif($nombre = '' || $provincia = '' || $terminoMunicipal = '' || .... etc

Debe ser:
elseif($nombre == '' || $provincia == '' || $terminoMunicipal == '' ||
  #7 (permalink)  
Antiguo 25/03/2015, 15:13
Avatar de NueveReinas  
Fecha de Ingreso: septiembre-2013
Ubicación: No tan Buenos Aires
Mensajes: 1.101
Antigüedad: 8 años, 8 meses
Puntos: 145
Respuesta: solo me inserta algunos valores en la BD

Lo que dice Ronruby es correcto.

Revisa la documentación al respecto: http://php.net/manual/es/language.op...comparison.php

Saludos.
__________________
¿Te sirvió la respuesta? Deja un +1
  #8 (permalink)  
Antiguo 26/03/2015, 02:30
 
Fecha de Ingreso: febrero-2008
Mensajes: 49
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: solo me inserta algunos valores en la BD

Cita:
Iniciado por Ronruby Ver Mensaje
Es facil, estás usando "=" para comparar en el elseif, cuando debería ser "==". El "=" es de igualación/asignación, por los que a las variables se les está asignando un valor en blanco.

elseif($nombre = '' || $provincia = '' || $terminoMunicipal = '' || .... etc

Debe ser:
elseif($nombre == '' || $provincia == '' || $terminoMunicipal == '' ||
cierto, muchas gracias!! Vaya berza gasto, picar tanto codigo no puede ser bueno.

un saludo y gracias por todos lospost, siempre sirven de ayuda

Etiquetas: bd, fecha, formulario, inserta
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:52.