Foros del Web » Programando para Internet » ASP Clásico »

ayuda

Estas en el tema de ayuda en el foro de ASP Clásico en Foros del Web. hola os cuento lo que me gustaria hacer, estoy con un proyecto liada para una asignatura y bueno quisiera hacer una tienda de animales, bien ...
  #1 (permalink)  
Antiguo 17/07/2008, 09:35
 
Fecha de Ingreso: diciembre-2007
Mensajes: 179
Antigüedad: 16 años, 5 meses
Puntos: 0
ayuda

hola os cuento lo que me gustaria hacer, estoy con un proyecto liada para una asignatura y bueno quisiera hacer una tienda de animales, bien mi mayor problema es que quiero que la web la vea todo el mundo sin falta de estar registrado y que a la hora de comprar deba identificarse y si no lo esta que se registre.
Mi problema es el siguiente, quiero que a la derecha de mi web aparezca el sitio donde loguearse pero claro si por ej un usuario esta registrado y nada mas abrir la web accede a su area y ve la tienda en ese recuadro de logue debera de aparecer los datos de la persona, y si por ejemplo hay otro usuario que se loguee en el momento de la compra el recuadro aparecera en el estado inicial, el caso es que no se como diferenciar la pagina donde este por que para una misma pagina puede darse dos situaciones y no se como afrontar esto.

Yo he pensado que tendre que hacer dos paginas para cada apartado de la tienda
1 con el recuadro inicial y otra con el recuadro relleno de los datos de usuario que acceda a su area.
Para diferenciarlo imagino que debere peguntar algo asi:

<%if (Session("registrado")!=true)
Response.Redirect("collares.htm");
else
Response.Redirect("collaresregistrado.htm");
%>

donde collares.htm es con el recuadro inicial y collaresregistrado.htm el recuadro recoge los datos del usuario.

Claro todo esto es un suposicion he imagino que habra forma mas sencilla de hacerlo pero como soy mu nueva en esto necesito consejo. Espero que me haya explicado mas o menos bien para que me podais ayudar. Muchas gracias
  #2 (permalink)  
Antiguo 17/07/2008, 10:44
Avatar de JuanRAPerez
Colaborador
 
Fecha de Ingreso: octubre-2003
Mensajes: 2.393
Antigüedad: 20 años, 7 meses
Puntos: 27
Respuesta: ayuda

hola: xhisna

bueno si entiendo tu problema es este:

es un mismo sitio y necesitas dos estados (usuario logiado y visitante)

puedes hacer con la variable de sesion que detallas en tu post pero tienes que hacer algo asi

haces tu pagina asp
pones

<%if (Session("registrado")!=true)
%>
muestro las generales de el usuario registrado
<%else%>
muestro el formulario HTML para que el usuario se identifique
<%end if%>


y en los enlaces de cada mascota podrias poner

<%if (Session("registrado")!=true)
%>
enlace que diga COMPRAR
<%else%>
No imprimo ese enlace
<%end if%>

no se si me di a entender si tienes dudas cometnas

suerte
__________________
JuanRa Pérez
San Salvador, El Salvador
  #3 (permalink)  
Antiguo 17/07/2008, 11:52
 
Fecha de Ingreso: diciembre-2007
Mensajes: 179
Antigüedad: 16 años, 5 meses
Puntos: 0
Respuesta: ayuda

Perfectamentre explicado,ahora solo queda aplicarlo, y ya contare si ha hecho lo esperado.
Muchas Gracias
  #4 (permalink)  
Antiguo 17/07/2008, 12:21
 
Fecha de Ingreso: diciembre-2007
Mensajes: 179
Antigüedad: 16 años, 5 meses
Puntos: 0
Respuesta: ayuda

<%if(Session("registrado")!=true)%>
<div id="logueo">
<h1>Area Personal</h1>
<label id="nick" style="color:red">Nick</label>
<input id="nick" name="nick" type="text" style="margin-left:16%" size="15"/><br/><br/>
<label id="password" style="color:red">Contraseña</label>
<input id="password" name="pasword" type="password" size="15"/><br/><br/>
<center><input type="submit" name="accede" value="Accede"/></center>
<br/>
<br/>
</div>
<%else%>
<%
var cadenaConexion = "Provider=Microsoft.jet.OLEDB.4.0;Data Source=" +Server.MapPath("basedatos/bd.mdb");
var sql,result= Server.CreateObject("ADODB.Recordset");
try{
conexion= Server.CreateObject("ADODB.Connection");//inicializamos la variable de conexion
conexion.open(cadenaConexion);//establecemos la comunicacion con la BD
}
catch(e){//tratamiento de posible errores
Response.Write ("<h2>Error1:</h2>");
Response.Write ("<b>" + e.description + "</b>");
Response.End();
}

try{
var nick = Session("nick");


sql="SELECT * FROM registro WHERE nick= '"+nick+"'";

conexion.BeginTrans();
result.Open(sql, conexion);

if(result.eof)
{

Response.Write("Error al encontrar sus datos, por favor, intentelo de nuevo")
Response.Write("<h4 align=center ><button onclick='history.back()'>Volver</button></h4>");
Response.End();
}
else
{
var nick = result("nick");
var contrasenia = result("contrasenia");
var nombre=result("nombre");
var apellidos=result("apellidos");
var telefono=result("telefono");
var email=result("email");
}
}
catch(e){//posible fallo en la BD
Response.Write ("<h2 align=center >Error2:</h2>");
Response.Write ("<b>" +e.description+ "</b>");
Response.Write("<h4 align=center ><button onclick='history.back()'>Volver</button></h4>");
Response.End();
}
%>

<div id="logueo">
<h1>Area Personal</h1>
<label for="nombre">Bienvenido</label>
<label for="respuesta"><%Response.Write(nombre)%></label>
<label for="apellidos">Apellidos:</label>
<label for="respuesta"><%Response.Write(apellidos)%></label>
<br/>
</div>
<%end if%>

Lo que no he puesto igual es lo si session registrado es distinto de verdadero tendra que aparecer para identificarse no!!! es que en tu respuesta creo kesta al reves de como yo lo entiendo.
Bueno ese es el codigo que yo he hecho es una prueba pero no funciona.
  #5 (permalink)  
Antiguo 17/07/2008, 14:06
Avatar de JuanRAPerez
Colaborador
 
Fecha de Ingreso: octubre-2003
Mensajes: 2.393
Antigüedad: 20 años, 7 meses
Puntos: 27
Respuesta: ayuda

te lo voy a poner sin código solo la lógica

si YA esta registrado [session("registrado")] es verdadero [true]; el usuario ya se registro entonces tengo que ponerle su Nick y algun otro detalle algo asi como

Bienvenido(a): Fulano de tal.

si NO esta registrado [session("registrado")] es falso [false]; imprimo el formulario para que se registre

viendo tu código [a la carrera] no veo el formulario de logueo

Cita:
<FORM action="validousuario.asp" method="post">
</FORM>
__________________
JuanRa Pérez
San Salvador, El Salvador
  #6 (permalink)  
Antiguo 17/07/2008, 14:37
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 5 meses
Puntos: 126
Respuesta: ayuda

Hola

Tampoco veo donde creas

Session("nick")

Supongo que la creas en la página de validación del usuario.
Cita:
Iniciado por JuanRAPerez Ver Mensaje
viendo tu código [a la carrera] no veo el formulario de logueo
Eso me lleva a que Session("registrado") y Session("Nick") contendrán lo mismo, por ejemplo el nombre del usuario o un código único, así que una de las dos sobra. Después verificas si está o no está vacía

Cita:
<%if IsEmpty(Session("registrado")) = True%>
Muestra form de logeo
<%else%>
Muestras datos del usuario
<%end if%>
Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #7 (permalink)  
Antiguo 19/07/2008, 10:56
 
Fecha de Ingreso: diciembre-2007
Mensajes: 179
Antigüedad: 16 años, 5 meses
Puntos: 0
Respuesta: ayuda

bueno despues de hacer varias pruebas me ha salido que andaba buscando por lo menos en lo del registro, espero que siga funcionando si algo volviese a darme problemas os pedire vuestra magnifica ayuda. muchas gracias
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 17:45.