Foros del Web » Programando para Internet » PHP »

En un script funciona y en otro no

Estas en el tema de En un script funciona y en otro no en el foro de PHP en Foros del Web. Hola! k tl todo? estoy haciendo una web en la que los usuarios deben registrarse. A la hora de realizar el registro deben introducir su ...
  #1 (permalink)  
Antiguo 15/02/2010, 13:25
Avatar de andmai  
Fecha de Ingreso: enero-2010
Mensajes: 84
Antigüedad: 10 años, 1 mes
Puntos: 1
En un script funciona y en otro no

Hola!
k tl todo?
estoy haciendo una web en la que los usuarios deben registrarse. A la hora de realizar el registro deben introducir su nombre una contrseña y su direccion de email.Si no rellenan todos los datos, tengo un javascript k hace saltar un alert.

Una vez que el usuario se haya identificado, tiene la opcion de modificar sus datos, y es aqui donde yo tengo el problema. Utilizo el mismo JS para comprobar que ninguno de los campos se queda vacio, pero al darle al boton aceptar, éste no hace nada!!
Por que puede ser????

aki dejo el código
Muchas gracias

Código PHP:
<? session_start(); // incio de uso de sesiones. Necesario cada vez que se lean o guarden variables de sesión. ?>


<html>
<head>
<title>
Modificar Perfil
</title>
</head>
<link rel="stylesheet" type="text/css" href="estilos.css"/>
 <script language="javascript">
    function valida_envia(){
    //valido el nombre
    
    if (document.formCrear.nombre.value.length==0){
       alert("Tiene que escribir su nombre")
       document.fvalida.nombre.focus()
       return false;
    }
    
    //valido la contraseña
    if (document.formCrear.contraseña.value.length==0){
       alert("Tiene que escribir su contraseña")
       document.fvalida.contraseña.focus()
       return false;
    } 
    
    //valido el email
    if (document.formCrear.email.value.length==0){
       alert("Tiene que escribir su email")
       document.fvalida.email.focus()
       return false;
    } 
     document.formCrear.submit();

}
</script>
<body>
<p class="tituloInicio">Modificar Perfil</p>
<? 
     
        $nombre
$_SESSION['nombre'];//Nombre antiguo del usuario
            
            //se conecta con la BD
        
$link mysql_connect('localhost''root');
        if (!
$link)
            {echo 
" no se puede conectar";}
            
        
mysql_select_db("DatosConfiguraciones",$link);
        
        
$consulta"SELECT * FROM perfil WHERE nombre= '$nombre' ";
        
$rdo=mysql_query($consulta,$link);    
        
$miarray mysql_fetch_array($rdo);    
        
$auxi$miarray['idPerfil'];
        
$_SESSION['idAntiguo']="$auxi";
        
$clave$miarray['clave'];
        
$email$miarray['email'];
    
 
?>
        
        <form method="post" action="modificarDatos.php" >
        <p class="titulo1">modifica tus datos:</p>
        <p class="textoAuxi">nombre:</p>
        <input type="text" name="nombre" size="20" class="posicionCaja" value="<? echo "$nombre"?>" > 
        <br>
        <br>
        <p class="textoAuxi">contraseña:</p>
        <input type="password" name="contraseña" size="20" class="posicionCaja" value="<? echo "$clave"?>"> 
        <br>
        <br>
        <p class="textoAuxi">email:</p>
        <input type="text" name="email" size="40" class="posicionCaja" value=" <? echo "$email"?>"> 
        <br>
        <input type="button" name="boton1" class="botonP" value="Aceptar"  onClick="valida_envia()">
        <input type="reset" name="boton2" class="botonP" value= "Borrar">
        <input class="botonP" type="submit" value="Atras" onclick=this.form.action='perfilPersonal.php'>
        </form>
</body>
</html>



Código PHP:
<? session_start(); // incio de uso de sesiones.  ?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Perfil Creado</title>
</head>
<link rel="stylesheet" type="text/css" href="estilos.css"/>
<body>

<?
        
//se conecta con la BD
        
$link mysql_connect('localhost''root');        
        if (!
$link)
            {echo 
" no se puede conectar";}
        
mysql_select_db("DatosConfiguraciones",$link);
        
        
$viejo=$_SESSION['idAntiguo']; // asignamos a $viejo la  variable de la session áctiva.
            
        
$nombreNew=$_POST["nombre"];
        
$passNew=$_POST["contraseña"];
        
$emailNew=$_POST["email"];
        
        
$consulta"SELECT * FROM perfil WHERE nombre='$nombreNew'";
        
$rdo=mysql_query($consulta,$link);
        
$miarraymysql_fetch_array($rdo);//pasar el resultado a la variable
        
$auxi$miarray['idPerfil'];
        
        
//if(mysql_num_rows($rdo)>0){
            
if ($auxi!=$viejo){
            echo 
"<p class=textoAuxi>Este perfil ya existe</p>";
            echo
"<form method=post>";
            echo
"<input class=botonSeleccion type=submit value=Volver onClick=this.form.action='modificarPerfil.php'>";
            echo 
" </form>";
            
            }
        else {
            
$sql="UPDATE perfil SET nombre='$nombreNew' , clave='$passNew' , email= '$emailNew' WHERE idPerfil='$viejo'";
            
$rdomysql_query ($sql,$link);
            echo 
"<p class=textoAuxi>La modificación se ha realizado con éxito</p>";    
            echo
"<form method=post>";
            echo
"<input class=botonSeleccion type=submit value=Atras onClick=this.form.action='perfil.php'>";
            echo 
" </form>";
            }
?>
</body>
</html>
  #2 (permalink)  
Antiguo 15/02/2010, 13:39
Avatar de hector2c  
Fecha de Ingreso: noviembre-2007
Ubicación: Perú - Tacna
Mensajes: 979
Antigüedad: 12 años, 2 meses
Puntos: 25
Respuesta: En un script funciona y en otro no

pues, en tu funcion usas el formulario con el nombre: fvalida y luego enviar el formulario con el nombre formCrear... y el formulario de modificar no tiene nombre...

mmm, tienes varios errores .___.
__________________
blog: hector2c.wordpress.com
email: [email protected]
  #3 (permalink)  
Antiguo 15/02/2010, 13:45
Avatar de jackson666  
Fecha de Ingreso: noviembre-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 1.971
Antigüedad: 10 años, 3 meses
Puntos: 65
Respuesta: En un script funciona y en otro no

Llamas a un elemento con el nombre "formCrear"
Código Javascript:
Ver original
  1. document.formCrear.nombre.value.length==0

Pero aca el nombre no esta??!! :
Código HTML:
Ver original
  1. <form method="post" action="modificarDatos.php" >
__________________
HV Studio
Diseño y desarrollo web
  #4 (permalink)  
Antiguo 15/02/2010, 13:56
Avatar de andmai  
Fecha de Ingreso: enero-2010
Mensajes: 84
Antigüedad: 10 años, 1 mes
Puntos: 1
Respuesta: En un script funciona y en otro no

Muchas gracias, eso ya lo he solucionado, le he puesto nombre al formulario y lo he modificado en el JS, pero sigue sin hacer nada cnd se pulsa aceptar....
pork puede ser????
  #5 (permalink)  
Antiguo 15/02/2010, 14:01
 
Fecha de Ingreso: enero-2010
Mensajes: 152
Antigüedad: 10 años, 1 mes
Puntos: 5
Respuesta: En un script funciona y en otro no

ya revisaste la consola de errores de firefox???? en estos problemas de javascript te da muchas pistas sobre cual el el problema
  #6 (permalink)  
Antiguo 15/02/2010, 14:05
Avatar de hector2c  
Fecha de Ingreso: noviembre-2007
Ubicación: Perú - Tacna
Mensajes: 979
Antigüedad: 12 años, 2 meses
Puntos: 25
Respuesta: En un script funciona y en otro no

podrias volver a enviar tu código con las modificaciones???, para seguir ayudandote???
__________________
blog: hector2c.wordpress.com
email: [email protected]
  #7 (permalink)  
Antiguo 15/02/2010, 14:36
Avatar de andmai  
Fecha de Ingreso: enero-2010
Mensajes: 84
Antigüedad: 10 años, 1 mes
Puntos: 1
Respuesta: En un script funciona y en otro no

si,claro



modificarPerfil.php

Código PHP:
<? session_start(); // incio de uso de sesiones. Necesario cada vez que se lean o guarden variables de sesión. ?>


<html>
<head>
<title>
Modificar Perfil
</title>
</head>
<link rel="stylesheet" type="text/css" href="estilos.css"/>
 <script language="javascript">
    function valida_envia(){
    //valido el nombre
    
    if (document.formBorrar.nombre.value.length==0){
       alert("Tiene que escribir su nombre")
       document.fvalida.nombre.focus()
       return false;
    }
    
    //valido la contraseña
    if (document.formBorrar.contraseña.value.length==0){
       alert("Tiene que escribir su contraseña")
       document.fvalida.contraseña.focus()
       return false;
    } 
    
    //valido el email
    if (document.formBorrar.email.value.length==0){
       alert("Tiene que escribir su email")
       document.fvalida.email.focus()
       return false;
    } 
     document.formBorrar.submit();

}
</script>
<body>
<p class="tituloInicio">Modificar Perfil</p>
<? 
     
        $nombre
$_SESSION['nombre'];//Nombre antiguo del usuario
            
            //se conecta con la BD
        
$link mysql_connect('localhost''root');
        if (!
$link)
            {echo 
" no se puede conectar";}
            
        
mysql_select_db("DatosConfiguraciones",$link);
        
        
$consulta"SELECT * FROM perfil WHERE nombre= '$nombre' ";
        
$rdo=mysql_query($consulta,$link);    
        
$miarray mysql_fetch_array($rdo);    
        
$auxi$miarray['idPerfil'];
        
$_SESSION['idAntiguo']="$auxi";
        
$clave$miarray['clave'];
        
$email$miarray['email'];
    
 
?>
        
        <form method="post" action="modificarDatos.php" name="formBorrar">
        <p class="titulo1">modifica tus datos:</p>
        <p class="textoAuxi">nombre:</p>
        <input type="text" name="nombre" size="20" class="posicionCaja" value="<? echo "$nombre"?>" > 
        <br>
        <br>
        <p class="textoAuxi">contraseña:</p>
        <input type="password" name="contraseña" size="20" class="posicionCaja" value="<? echo "$clave"?>"> 
        <br>
        <br>
        <p class="textoAuxi">email:</p>
        <input type="text" name="email" size="40" class="posicionCaja" value=" <? echo "$email"?>"> 
        <br>
        <input type="button" name="boton1" class="botonP" value="Aceptar"  onClick="valida_envia()">
        <input type="reset" name="boton2" class="botonP" value= "Borrar">
        <input class="botonP" type="submit" value="Atras" onclick=this.form.action='perfilPersonal.php'>
        </form>
</body>
</html>


modificarDatos.php



Código PHP:
<? session_start(); // incio de uso de sesiones.  ?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Perfil Creado</title>
</head>
<link rel="stylesheet" type="text/css" href="estilos.css"/>
<body>

<?
        
//se conecta con la BD
        
$link mysql_connect('localhost''root');        
        if (!
$link)
            {echo 
" no se puede conectar";}
        
mysql_select_db("DatosConfiguraciones",$link);
        
        
$viejo=$_SESSION['idAntiguo']; // asignamos a $viejo la  variable de la session áctiva.
            
        
$nombreNew=$_POST["nombre"];
        
$passNew=$_POST["contraseña"];
        
$emailNew=$_POST["email"];
        
        
$consulta"SELECT * FROM perfil WHERE nombre='$nombreNew'";
        
$rdo=mysql_query($consulta,$link);
        
$miarraymysql_fetch_array($rdo);//pasar el resultado a la variable
        
$auxi$miarray['idPerfil'];
        
        
//if(mysql_num_rows($rdo)>0){
            
if ($auxi!=$viejo){
            echo 
"<p class=textoAuxi>Este perfil ya existe</p>";
            echo
"<form method=post>";
            echo
"<input class=botonSeleccion type=submit value=Volver onClick=this.form.action='modificarPerfil.php'>";
            echo 
" </form>";
            
            }
        else {
            
$sql="UPDATE perfil SET nombre='$nombreNew' , clave='$passNew' , email= '$emailNew' WHERE idPerfil='$viejo'";
            
$rdomysql_query ($sql,$link);
            echo 
"<p class=textoAuxi>La modificación se ha realizado con éxito</p>";    
            echo
"<form method=post>";
            echo
"<input class=botonSeleccion type=submit value=Atras onClick=this.form.action='perfil.php'>";
            echo 
" </form>";
            }
?>
</body>
</html>
  #8 (permalink)  
Antiguo 15/02/2010, 14:39
Avatar de andmai  
Fecha de Ingreso: enero-2010
Mensajes: 84
Antigüedad: 10 años, 1 mes
Puntos: 1
Respuesta: En un script funciona y en otro no

perdon, en realidad seria asi


modificarPerfil.php


Código PHP:
<? session_start(); // incio de uso de sesiones. Necesario cada vez que se lean o guarden variables de sesión. ?>


<html>
<head>
<title>
Modificar Perfil
</title>
</head>
<link rel="stylesheet" type="text/css" href="estilos.css"/>
 <script language="javascript">
    function valida_envia(){
    //valido el nombre
    
    if (document.formBorrar.nombre.value.length==0){
       alert("Tiene que escribir su nombre")
       document.formBorrar.nombre.focus()
       return false;
    }
    
    //valido la contraseña
    if (document.formBorrar.contraseña.value.length==0){
       alert("Tiene que escribir su contraseña")
       document.formBorrar.contraseña.focus()
       return false;
    } 
    
    //valido el email
    if (document.formBorrar.email.value.length==0){
       alert("Tiene que escribir su email")
       document.formBorrar.email.focus()
       return false;
    } 
     document.formBorrar.submit();

}
</script>
<body>
<p class="tituloInicio">Modificar Perfil</p>
<? 
     
        $nombre
$_SESSION['nombre'];//Nombre antiguo del usuario
            
            //se conecta con la BD
        
$link mysql_connect('localhost''root');
        if (!
$link)
            {echo 
" no se puede conectar";}
            
        
mysql_select_db("DatosConfiguraciones",$link);
        
        
$consulta"SELECT * FROM perfil WHERE nombre= '$nombre' ";
        
$rdo=mysql_query($consulta,$link);    
        
$miarray mysql_fetch_array($rdo);    
        
$auxi$miarray['idPerfil'];
        
$_SESSION['idAntiguo']="$auxi";
        
$clave$miarray['clave'];
        
$email$miarray['email'];
    
 
?>
        
        <form method="post" action="modificarDatos.php" name="formBorrar">
        <p class="titulo1">modifica tus datos:</p>
        <p class="textoAuxi">nombre:</p>
        <input type="text" name="nombre" size="20" class="posicionCaja" value="<? echo "$nombre"?>" > 
        <br>
        <br>
        <p class="textoAuxi">contraseña:</p>
        <input type="password" name="contraseña" size="20" class="posicionCaja" value="<? echo "$clave"?>"> 
        <br>
        <br>
        <p class="textoAuxi">email:</p>
        <input type="text" name="email" size="40" class="posicionCaja" value=" <? echo "$email"?>"> 
        <br>
        <input type="button" name="boton1" class="botonP" value="Aceptar"  onClick="valida_envia()">
        <input type="reset" name="boton2" class="botonP" value= "Borrar">
        <input class="botonP" type="submit" value="Atras" onclick=this.form.action='perfilPersonal.php'>
        </form>
</body>
</html>
  #9 (permalink)  
Antiguo 15/02/2010, 14:40
Avatar de andmai  
Fecha de Ingreso: enero-2010
Mensajes: 84
Antigüedad: 10 años, 1 mes
Puntos: 1
Respuesta: En un script funciona y en otro no

Cita:
Iniciado por paynalton Ver Mensaje
ya revisaste la consola de errores de firefox???? en estos problemas de javascript te da muchas pistas sobre cual el el problema
desconozco lo k es la consola de errores....
  #10 (permalink)  
Antiguo 15/02/2010, 15:56
Avatar de jackson666  
Fecha de Ingreso: noviembre-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 1.971
Antigüedad: 10 años, 3 meses
Puntos: 65
Respuesta: En un script funciona y en otro no

Cita:
Iniciado por andmai Ver Mensaje
desconozco lo k es la consola de errores....
Herramientas->Consola de errores (en firefox)

Sino mejor aun, instalate el firebug
__________________
HV Studio
Diseño y desarrollo web

Etiquetas: Ninguno
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 18:56.