Foros del Web » Programando para Internet » PHP »

error: campo vacío al des-habilitar input check

Estas en el tema de error: campo vacío al des-habilitar input check en el foro de PHP en Foros del Web. Hola foreros, a ver si alguien me tira una soga: Tengo en mi script un formulario para editar registros; en el cual hay un input ...
  #1 (permalink)  
Antiguo 08/01/2014, 17:07
Avatar de alette666  
Fecha de Ingreso: febrero-2010
Ubicación: En la luna
Mensajes: 277
Antigüedad: 14 años, 2 meses
Puntos: 5
Pregunta error: campo vacío al des-habilitar input check

Hola foreros, a ver si alguien me tira una soga:

Tengo en mi script un formulario para editar registros; en el cual hay un input check q me impide editar cierta parte del formulario (por ejemplo un textarea con un código que traigo desde la BD. si el usuario desea editar ese campo solo tiene que cliquear sobre el check y de esa forma editarlo; pero mi problema es que si no quiere editar ese textarea y desea guardar de nuevo el registro; el php encargado de ejecutar dicho comando, me arroja error, esperando datos en el textarea (pero yo ya había cargado el dato desde la BD), entonces para que no me de ese error tengo que habilitar si o si el checked (para editar) y asi poder guardar el registro.

aca el codigo (una parte importante)

Código PHP:
<?php include('network/edit.php'); ?>
                <article class="module width_full">
            <header><h3>Editar Registro de bloque Publicitario</h3></header>
                <div class="module_content">
                 <form name="form" action="<?php echo $_SERVER['PHP_SELF']?>" method="post">
                  <div class="div_camp_fecha">
                  <?php 
                  
require('config/connect.php');
                  
$id $_POST['id'];
                  
$query_con"SELECT * FROM $Name_tabla2 WHERE id_camp= '$id'";
                  
$consultamysql_query($query_con);
                  
                  while(
$rowmysql_fetch_array($consulta)){
                      
$camp$row['camp'];
                      
$pais$row['pais'];
                      
$formato$row['formato'];
                      
$ads$row['ads'];
                  }                      
                  
?>

<input id="input_camp" name="campania" type="text" maxlength="50" onFocus="this.blur()" value="<?php echo $camp?>">
                    <label class="label_camp_fecha"><span style="color:#F00;">*(Nombre de la Campaña)</span></label>
                    <br>
                    <br>

<!--/acá es extenso el formulario, así que lo acortaré/-->
<!--//-->
<!--//-->
<!--//-->

<input type="hidden" name="ident" value="<?php echo $id?>">
                  
                  <div class="div_codigo">
                    <label>&nbsp;Contenido: <span style="color: #909; font-weight:bold;">Editar?</span> <input type="checkbox" onclick="document.form.codigo.disabled=!document.form.codigo.disabled" title="Habilitar correccion del textarea"></label>
                    <textarea name="codigo" cols="81" rows="11" disabled><?php echo $ads?></textarea>
                  </div>
                        <div class="clear"></div>
                </div>
            <footer>
                <div class="submit_link">
                    <input type="submit" name="publicar" value="Publicar" class="alt_btn">
                    <input type="reset" value="Resetear"  class="alt_reset">
                </div>
            </footer>
            </form>
Bien el cheked esta desabilitado por defecto, solo el usuario si quiere editar dicho textarea lo tendrá que habilitar para editar, pero sino quiere cambiar nada, entonces lo deja asi tal cual está. pero ahi me sale el error de q esperaba contenido en el textarea.

¿Como puedo solucionar eso? de que al estar desabilitado me vuelva a guardar lo que ha traido el textarea?
__________________
Y Sócrates dijo...Solo sé que no sé nada.
Entiende la filosofía como una búsqueda colectiva basada en el diálogo.
  #2 (permalink)  
Antiguo 08/01/2014, 17:31
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: error: campo vacío al des-habilitar input check

Pues el código que deberías mostrar es el que hace la comprobación, ¿no te parece?

Digo, ver el código del formulario no sirve de nada, absolutamente de nada.

En todo caso, ¿qué tan complicado es hacer una comparación?

Código PHP:
Ver original
  1. if ($campo_checked) {
  2.   // verifico el textarea
  3. }

PDTA: recuerda que una campo disabled nunca se envía al servidor, no importa si tiene o no valores.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 08/01/2014, 17:47
Avatar de alette666  
Fecha de Ingreso: febrero-2010
Ubicación: En la luna
Mensajes: 277
Antigüedad: 14 años, 2 meses
Puntos: 5
Respuesta: error: campo vacío al des-habilitar input check

Cita:
Iniciado por pateketrueke Ver Mensaje
Pues el código que deberías mostrar es el que hace la comprobación, ¿no te parece?

Digo, ver el código del formulario no sirve de nada, absolutamente de nada.

En todo caso, ¿qué tan complicado es hacer una comparación?

Código PHP:
Ver original
  1. if ($campo_checked) {
  2.   // verifico el textarea
  3. }

PDTA: recuerda que una campo disabled nunca se envía al servidor, no importa si tiene o no valores.
asi dices?
Código PHP:
<?php
if (isset($_REQUEST['acepto'])) {
    print 
"<p>Desea recibir información</p>\n";
} else {
    print 
"<p>No desea recibir información</p>\n";
}
?>

<form action="ejemplo.php">
  <p>Deseo recibir información: <input type="checkbox" name="acepto" /></p>
  <p><input type="submit" value="Enviar" /></p>
</form>
Es un ejemplo, lo saque de internet
__________________
Y Sócrates dijo...Solo sé que no sé nada.
Entiende la filosofía como una búsqueda colectiva basada en el diálogo.
  #4 (permalink)  
Antiguo 08/01/2014, 17:50
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: error: campo vacío al des-habilitar input check

Sí, algo así.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Etiquetas: checkbox, checked
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 16:58.