Foros del Web » Programando para Internet » PHP »

Inactivar campo formulario si existe en base de datos un valor

Estas en el tema de Inactivar campo formulario si existe en base de datos un valor en el foro de PHP en Foros del Web. Hola para todos tengo el siguiente Script el cual verifica en la base de datos al tiempo si lo que se escribe en el primer ...
  #1 (permalink)  
Antiguo 03/09/2015, 18:07
 
Fecha de Ingreso: noviembre-2004
Mensajes: 249
Antigüedad: 19 años, 5 meses
Puntos: 1
Inactivar campo formulario si existe en base de datos un valor

Hola para todos tengo el siguiente Script el cual verifica en la base de datos al tiempo si lo que se escribe en el primer campo no esta en la base de datos (para evitar repetir) y si esta repetido avisa sacando una ventana y muestra una imagen mostrando que la info esta ya en la base de datos

Código PHP:
<?php
define
('DB_SERVER''localhost');
define('DB_SERVER_USERNAME''usuario');
define('DB_SERVER_PASSWORD''contrasena');
define('DB_DATABASE''mibasededatos');

$conexion mysql_connect(DB_SERVERDB_SERVER_USERNAMEDB_SERVER_PASSWORD);
mysql_select_db(DB_DATABASE$conexion);
?>
<script type="text/javascript" src="jquery-1.3.2.js"></script>
<link href="css.css" media="screen" rel="stylesheet" type="text/css" />
<script type="text/javascript">
$(document).ready(function() {    
    $('#numeroproceso').blur(function(){
        
        $('#Info').html('<img src="" alt="" />').fadeOut(1000);

        var numeroproceso = $(this).val();        
        var dataString = 'numeroproceso='+numeroproceso;
        
        $.ajax({
            type: "POST",
            url: "check_username_availablity.php",
            data: dataString,
            success: function(data) {
                $('#Info').fadeIn(1000).html(data);
                //alert(data);
            }
        });
    });              
});    
</script>
<input name="numeroproceso" type="text" id="numeroproceso" autocomplete="off" onKeyUp="form.numeroproceso.value=form.numeroproceso.value.toUpperCase()" size="15"  input ;/>
<label for="nombre"></label>
<input type="text" name="nombre" id="nombre">
<input type="text" name="apellidos" id="apellidos">
<div id="Info"></div>

los scripts que usa o llama el ejemplo para que funcione los pongo a continuación jquery-1.3.2.js, css.css y check_username_availablity.php el cual solo pondre este ultimo



check_username_availablity.php:

Código PHP:
<?php
sleep
(1);
//------------------------
define('DB_SERVER''localhost');
define('DB_SERVER_USERNAME''usuario');
define('DB_SERVER_PASSWORD''contrasena');
define('DB_DATABASE''mibasededatos');

$conexion mysql_connect(DB_SERVERDB_SERVER_USERNAMEDB_SERVER_PASSWORD);
mysql_select_db(DB_DATABASE$conexion);
//----------------------------
if($_REQUEST)
{
    
$numeroproceso     $_REQUEST['numeroproceso'];
    
$query "select * from contenido_archivo where numeroproceso = '".strtolower($numeroproceso)."'";
    
$results mysql_query($query) or die('ok');
    
    if(
mysql_num_rows(@$results) > 0// not available
    
{
        echo 
'<div id="Error"></div>';
        echo 
"<script type=''>alert('Ya existe el proceso $numeroproceso en la base de datos');</script>";         
            }
    else
    {
        echo 
""

    }
    
}
?>

Lo que necesito hacer es que al tratar de ingresar algoq ue ya este en la base de datos, los otros campos del formulario se inactiven de modo que no permita ingresar en los otros campos ninguna informacion hasta que no se cambie lo del campo inicial.. (si se necesita los otros scripts se los hago pasar para que me puedan ayudar) Gracias
  #2 (permalink)  
Antiguo 03/09/2015, 18:40
 
Fecha de Ingreso: julio-2011
Mensajes: 220
Antigüedad: 12 años, 9 meses
Puntos: 72
Respuesta: Inactivar campo formulario si existe en base de datos un valor

En la función success habría que verificar si el servidor ha enviado el mensaje de error o no y en base a ello deshabilitar o habilitar los campos de texto.
Código Javascript:
Ver original
  1. success: function(data) {
  2.                 if(data!="") {
  3.                     $("#nombre").attr("disabled", "disabled");
  4.                     $("#apellidos").attr("disabled", "disabled");
  5.                 } else {
  6.                     $("#nombre").removeAttr("disabled");
  7.                     $("#apellidos").removeAttr("disabled");
  8.                 }
  9.                 $('#Info').fadeIn(1000).html(data);
  10.                 //alert(data);
  11.             }

Por cierto, esto se trata de javascript no de PHP.
  #3 (permalink)  
Antiguo 03/09/2015, 19:14
 
Fecha de Ingreso: noviembre-2004
Mensajes: 249
Antigüedad: 19 años, 5 meses
Puntos: 1
Respuesta: Inactivar campo formulario si existe en base de datos un valor

Excelente Funciona, perdóname por postearlo acá la costumbre de entrar en el canal PHP siempre

GRACIAS AMIGOOOOOOOO

pero por ultimo ya le puse a todos los campos y funciona se inactivan todos pero el boton de enviar por que no se inactiva

si igual puse para que lo hiciera
Código Javascript:
Ver original
  1. success: function(data) {
  2.                 if(data!="") {
  3.                     //------------------------------------------------
  4.                     $("#contratonumero").attr("disabled", "disabled");
  5.                     $("#constancia").attr("disabled", "disabled");
  6.                     $("#objeto").attr("disabled", "disabled");
  7.                     $("#contratista").attr("disabled", "disabled");
  8.                     $("#estante").attr("disabled", "disabled");
  9.                     $("#seccion").attr("disabled", "disabled");
  10.                     $("#folder").attr("disabled", "disabled");
  11.                     $("#userfile").attr("disabled", "disabled");
  12.                     $("#submit").attr("disabled", "disabled");
  13.                     $("#cancelar").attr("disabled", "disabled");
  14.                 } else {
  15.                     $("#contratonumero").removeAttr("disabled");
  16.                     $("#constancia").removeAttr("disabled");
  17.                     $("#objeto").removeAttr("disabled");
  18.                     $("#contratista").removeAttr("disabled");
  19.                     $("#estante").removeAttr("disabled");
  20.                     $("#seccion").removeAttr("disabled");
  21.                     $("#folder").removeAttr("disabled");
  22.                     $("#userfile").removeAttr("disabled");
  23.                     $("#submit").removeAttr("disabled");
  24.                     $("#cancelar").removeAttr("disabled");
  25.                 }
  26.                 $('#Info').fadeIn(1000).html(data);
y el boton cancelar si se inactiva pero el Enviar no.. por que

Código HTML:
Ver original
  1. <td width="65" bgcolor="#084B8A"><input name="submit" type="submit" value="Agregar" onClick="javascript:return validar()" /></td>
  2. <input name="cancelar" type="button" id="cancelar" onClick="window.close()" value="Cancelar" /></td>

Última edición por flashtrix; 03/09/2015 a las 19:32
  #4 (permalink)  
Antiguo 03/09/2015, 19:47
 
Fecha de Ingreso: julio-2011
Mensajes: 220
Antigüedad: 12 años, 9 meses
Puntos: 72
Respuesta: Inactivar campo formulario si existe en base de datos un valor

Bueno, es que ese botón no tiene atributo id, puedes ponérselo o utilizar otro selector de jQuery.

Etiquetas: campo, formulario, html, mysql, select, sql, valor
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 07:50.