Ver Mensaje Individual
  #8 (permalink)  
Antiguo 19/02/2014, 12:41
yakrum
 
Fecha de Ingreso: febrero-2014
Ubicación: España
Mensajes: 19
Antigüedad: 11 años
Puntos: 0
Respuesta: Añadir atributo checked a un checkbox dinamicamente

Este 'insertar_excursiones' es el tipico formulario con varios campos, la particularidad que tiene es una parte del formulario va a la tabla 'sitios' y otra parte va a la tabla 'excursiones' (la que guarda los valores de los checkboxs); ambas tablas tiene un campo que se llama 'idSitio' que guarda el mismo valor para que se relacionen los datos correspondientes mediante ese "id". Este es su codigo:

Código PHP:
Ver original
  1. <?php include("pages/seguridad.php"); include("pages/conexion.php");?> <!--configuramos el acceso y la conexion llamando a los archivos-->
  2. <h2>INSERTAR EXCURSION</h2>
  3. <?php include("pages/menu_gestor.php");?><!--insertamos el menu del gestor-->
  4. <div id="formulario">
  5.     <?php $error = ''; /*al cargar la pagina por primera vez, el mensaje de error lo ponemos sin texto*/
  6.         if(isset($_POST["boton_enviar_formulario"])){
  7.                 $denominacion= isset($_POST['denominacion']) ? $_POST['denominacion']: '';
  8.                 $dir_calle= isset($_POST['dir_calle']) ? $_POST['dir_calle']: '';
  9.                 $dir_num= isset($_POST['dir_num']) ? $_POST['dir_num']: '';
  10.                 $dir_piso= isset($_POST['dir_piso']) ? $_POST['dir_piso']: '';
  11.                 $dir_letra= isset($_POST['dir_letra']) ? $_POST['dir_letra']: '';
  12.                 $dir_cp= isset($_POST['dir_cp']) ? $_POST['dir_cp']: '';
  13.                 $localidad= isset($_POST['localidad']) ? $_POST['localidad']: '';
  14.                 $provincia= isset($_POST['provincia']) ? $_POST['provincia']: '';
  15.                 $contacto= isset($_POST['contacto']) ? $_POST['contacto']: '';
  16.                 $tlf_contacto= isset($_POST['tlf_contacto']) ? $_POST['tlf_contacto']: '';
  17.                 $correo= isset($_POST['correo']) ? $_POST['correo']: '';
  18.                 $coordenadasGPS= isset($_POST['coordenadasGPS']) ? $_POST['coordenadasGPS']: '';
  19.                 $observaciones= isset($_POST['observaciones']) ? $_POST['observaciones']: '';
  20.                 $link_foto= isset($_POST['link_foto']) ? $_POST['link_foto']: '';
  21.                 $puntuacion= isset($_POST['puntuacion']) ? $_POST['puntuacion']: '';
  22.                 $tipo= isset($_POST['tipo']) ? $_POST['tipo']: '';
  23.                 $trans_publico= isset($_POST['trans_publico']) ? $_POST['trans_publico']: '';
  24.                 $agua_potable= isset($_POST['agua_potable']) ? $_POST['agua_potable']: '';
  25.                 $aseos= isset($_POST['aseos']) ? $_POST['aseos']: '';      
  26.                 if(trim($denominacion) == ''){
  27.                     $error = '<div class="errormsg">Escribe una DENOMINACI&Oacute;N para el sitio, por favor.</div>';
  28.                 }
  29.                 else if(trim($dir_calle) == ''){
  30.                     $error = '<div class="errormsg">Escribe una CALLE por favor.</div>';
  31.                 }
  32.                 else if(trim($dir_num) == ''){
  33.                     $error = '<div class="errormsg">Escribe tu TEL&Eacute;nFONO DE CONTACTO por favor.</div>';
  34.                 }
  35.                 else if(trim($localidad) == ''){
  36.                     $error = '<div class="errormsg">Escribe una LOCALIDAD por favor.</div>';
  37.                 }
  38.                 else if(trim($provincia) == ''){
  39.                     $error = '<div class="errormsg">Escribe la PROVINCIA por favor.</div>';
  40.                 }
  41.                 else if(!validarTelefono($tlf_contacto)){
  42.                     $error = '<div class="errormsg">El tel&eacute;fono proporcionado NO ES VALIDO, comprueba el n&uacute;mero por favor.</div>';
  43.                 }
  44.                 else if(!validarCorreo($correo)){
  45.                     $error = '<div class="errormsg">La direcci&oacute;n de EMAIL NO ES VALIDA, escribe la direcci&oacute;n correctamente.</div>';
  46.                 }
  47.                 if($error == ''){
  48.                         if(get_magic_quotes_gpc()){
  49.                             $mensaje = stripslashes($mensaje);
  50.                         }
  51.                         $sql="INSERT INTO sitios (denominacion, dir_calle, dir_num, dir_piso, dir_letra, dir_cp, localidad, provincia, contacto, tlf_contacto, correo, coordenadasGPS, observaciones, link_foto, puntuacion, tipo ) VALUES ('$denominacion', '$dir_calle', '$dir_num', '$dir_piso', '$dir_letra', '$dir_cp', '$localidad', '$provincia', '$contacto', '$tlf_contacto', '$correo', '$coordenadasGPS', '$observaciones', '$link_foto', '$puntuacion', '$tipo')"; //esta es la consulta
  52.                         $res=mysql_query($sql,$conexion); //ejecuta la consulta, pero si me devuelve false hacemos la siguiente condición
  53.                     if($res){
  54.                         echo "Sitio insertado correctamente";
  55.                         $sql2="SELECT * FROM sitios WHERE denominacion='$denominacion'";      
  56.                         $consulta2=mysql_query($sql2,$conexion2);    
  57.                         $registro2=mysql_fetch_array($consulta2);
  58.                         $idSitios=$registro2["idSitios"];
  59.                         //segunda insercion
  60.                         $sql="INSERT INTO excursiones (idSitios, trans_publico, agua_potable, aseos) VALUES ('$idSitios','$trans_publico','$agua_potable','$aseos')"; //esta es la consulta
  61.                         $res=mysql_query($sql,$conexion);
  62.                         }else{
  63.                             echo "No se ha insertado correctamente.";}
  64.                 }
  65.             }  
  66.             if(!isset($_POST['boton_enviar_formulario']) || $error != ''){
  67.             ?>
  68.             <!--Mensaje de error por si  falta de rellenar un campo obligatorio al pulsar el boton_enviar_formulario-->
  69.             <?=$error;?>
  70.     <form method="post" action="index.php?p=insertar_excursiones">
  71.         <label>Denominaci&oacute;n:</label>
  72.             <input type="text" name="denominacion" value="<?php echo isset($_POST['denominacion']) ? $_POST['denominacion']: '';?>"/><span class="obligatorio_insertar">*</span><br/>
  73.         <label>Calle:</label>
  74.             <input type="text" name="dir_calle" value="<?php echo isset($_POST['dir_calle']) ? $_POST['dir_calle']: '';?>"/><span class="obligatorio_insertar">*</span><br/>
  75.         <label>N&uacute;mero:</label>
  76.             <input type="text" name="dir_num" value="<?php echo isset($_POST['dir_num']) ? $_POST['dir_num']: '';?>"/><span class="obligatorio_insertar">*</span><br/>
  77.         <label>Piso:</label>
  78.             <input type="text" name="dir_piso" value="<?php echo isset($_POST['dir_piso']) ? $_POST['dir_piso']: '';?>"/><br/>
  79.         <label>Letra:</label>
  80.             <input type="text" name="dir_letra" value="<?php echo isset($_POST['dir_letra']) ? $_POST['dir_letra']: '';?>"/><br/>
  81.         <label>C.P:</label>
  82.             <input type="text" name="dir_cp" value="<?php echo isset($_POST['dir_cp']) ? $_POST['dir_cp']: '';?>"/><br/>
  83.         <label>Localidad:</label>
  84.             <input type="text" name="localidad" value="<?php echo isset($_POST['localidad']) ? $_POST['localidad']: '';?>"/><span class="obligatorio_insertar">*</span><br/>
  85.         <label>Provincia:</label>
  86.             <input type="text" name="provincia" value="<?php echo isset($_POST['provincia']) ? $_POST['provincia']: '';?>"/><span class="obligatorio_insertar">*</span><br/>
  87.         <label>Contacto:</label>
  88.             <input type="text" name="contacto" value="<?php echo isset($_POST['contacto']) ? $_POST['contacto']: '';?>"/><br/>
  89.         <label>Tel&eacute;fono Contacto:</label>
  90.             <input type="text" name="tlf_contacto" value="<?php echo isset($_POST['tlf_contacto']) ? $_POST['tlf_contacto']: '';?>"/><span class="obligatorio_insertar">*</span><br/>
  91.         <label>Correo:</label>
  92.             <input type="text" name="correo" value="<?php echo isset($_POST['correo']) ? $_POST['correo']: '';?>"/><br/>
  93.         <label>Coordenadas GPS:</label>
  94.             <input type="text" name="coordenadasGPS" value="<?php echo isset($_POST['coordenadasGPS']) ? $_POST['coordenadasGPS']: '';?>"/>
  95.             <!--Botones de gps-->
  96.                 <a href="https://maps.google.es/" target="_blank" class="coordenadas_google" title="Consultar coordenadas en Google">Google</a>
  97.                 <a href="http://sigpac.mapa.es/fega/visor/" target="_blank" class="coordenadas_sigpac" title="Consultar coordenadas en SigPac">SigPac</a>
  98.                 <a href="http://www.montanasegura.com/" target="_blank" class="coordenadas_mide" title="Consultar coordenadas en MIDE">M.I.D.E.</a><br/>
  99.         <label>Observaciones:</label>                          
  100.             <input type="textarea" cols="40" rows="3" name="observaciones" value="<?php echo isset($_POST['observaciones']) ? $_POST['observaciones']: '';?>"> </textarea><br/>
  101.         <label>Foto:</label>
  102.             <input type="text" name="link_foto" value="<?php echo isset($_POST['link_foto']) ? $_POST['link_foto']: '';?>"/><br/>
  103.         <label>Puntuaci&oacute;n:</label>
  104.             <input type="text" name="puntuacion" value="<?php echo isset($_POST['puntuacion']) ? $_POST['puntuacion']: '';?>"/><br/>
  105.         <label>Tipo de Sitio:</label>
  106.             <input type="text" name="tipo" value=""/><br />
  107.         <label>¿Se puede llegar con transporte p&uacute;blico?</label> 
  108.             <input type="checkbox" name="trans_publico" value="1"><br />
  109.         <label>¿Hay agua potable?</label>
  110.             <input type="checkbox" name="agua_potable" value="1"><br />
  111.         <label>¿Hay aseos p&uacute;blicos?</label>
  112.             <input type="checkbox" name="aseos" value="1"><br /><br />             
  113.         <br /><br />
  114.         Los campos marcados con '<span class="obligatorio_insertar">*</span>' son obligatorios para poder almacenar los datos.
  115.         <br /><br />
  116.         <input type="submit" name="boton_enviar_formulario" value="Insertar Excursi&oacute;n" title="Insertar"/><!--con lo q llegue en  boton_enviar_formulario lo recojo arriba-->
  117.     </form>
  118.         <?php
  119.             }
  120.             //Verificacion de direccion correcta de e-mail
  121.             function validarCorreo($correo){
  122.                 return(preg_match("/^[-_.[:alnum:]]+@((([[:alnum:]]|[[:alnum:]][[:alnum:]-]*[[:alnum:]])\.)+(ad|ae|aero|af|ag|ai|al|am|an|ao|aq|ar|arpa|as|at|au|aw|az|ba|bb|bd|be|bf|bg|bh|bi|biz|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|com|coop|cr|cs|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|edu|ee|eg|eh|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gh|gi|gl|gm|gn|gov|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|in|info|int|io|iq|ir|is|it|jm|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|mg|mh|mil|mk|ml|mm|mn|mo|mp|mq|mr|ms|mt|mu|museum|mv|mw|mx|my|mz|na|nombre|nc|ne|net|nf|ng|ni|nl|no|np|nr|nt|nu|nz|om|org|pa|pe|pf|pg|ph|pk|pl|pm|pn|pr|pro|ps|pt|pw|py|qa|re|ro|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sy|sz|tc|td|tf|tg|th|tj|tk|tm|tn|to|tp|tr|tt|tv|tw|tz|ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|ye|yt|yu|za|zm|zw)$|(([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))$/i",$correo));
  123.             }
  124.             //Verificacion de numero de telefono valido
  125.             function validarTelefono($tlf_contacto){
  126.                 return (preg_match('/^[0-9]{9,9}$/', $tlf_contacto));
  127.             }
  128.         ?>
  129. </div>
  130. <br />
  131. <a href='index.php?p=excursiones'>Volver al listado</a>