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

asp problema como hace if

Estas en el tema de asp problema como hace if en el foro de ASP Clásico en Foros del Web. hola de nuevo denante no me explique muy bien pero ahora intentare este es mi codigo con una dabe se datos en access lo que ...
  #1 (permalink)  
Antiguo 28/11/2008, 16:50
 
Fecha de Ingreso: octubre-2007
Mensajes: 106
Antigüedad: 17 años, 6 meses
Puntos: 0
asp problema como hace if

hola de nuevo denante no me explique muy bien pero ahora intentare este es mi codigo con una dabe se datos en access lo que quiero hacer es que cuando llame a la informacion de la base de datos no me aparescan espacios en blanco porque algunas personas no completan todo el formulario como se puede hacer para que ese espacio en blanco no salga y aparesca sin esos espacios solo que aparesca la informacion que el relleno.

muchas gracias

<!--#include file="inc_top.asp"-->
<%

%>

<!--#include file="protected.asp"-->
<!--#include file="dbconn.asp"-->
<%
Dim sql,rsUser
sql = "SELECT * FROM Users WHERE username = '" & username & "'"
Set rsUser = Server.CreateObject("ADODB.Recordset")
rsuser.Open sql, dbconn, 3, 3
%>
<style type="text/css">
<!--
#Layer1 {
position:absolute;
left:15px;
top:108px;
width:155px;
height:394px;
background-color:#ECE9D8;
layer-background-color:#ECE9D8;
border:1px none #000000;
z-index:1;
}
.Estilo4 {
font-size: 14px;
font-weight: bold;
}
.Estilo5 {font-size: 14px}
-->
</style>
<body bgcolor="">
</span></td>
<td width="30%" height="0" align=bgcolor="#F78009" bgcolor="#F78009"><p><font size="2"><b><%=rsUser("instalaciones1")%></b></font><br>
<font size="2"><b><%=rsUser("instalaciones2")%><br>
</b></font><font size="2"><b><%=rsUser("instalaciones3")%><br>
</b></font><font size="2"><b><%=rsUser("instalaciones4")%><br>
</b></font><font size="2"><b><%=rsUser("instalaciones5")%></b></font><br>
<font size="2"><b><%=rsUser("instalaciones6")%><br>
</b></font><font size="2"><b><%=rsUser("instalaciones7")%><br>
</b></font><font size="2"><b><%=rsUser("instalaciones8")%><br>
</b></font><font size="2"><b><%=rsUser("instalaciones9")%></b></font><br>
<font size="2"><b><%=rsUser("instalaciones10")%><br>
</b></font><font size="2"><b><%=rsUser("instalaciones11")%><br>
</b></font><font size="2"><b><%=rsUser("instalaciones12")%><br>
</b></font><font size="2"><b><%=rsUser("instalaciones13")%></b></font><br>
<font size="2"><b><%=rsUser("instalaciones14")%><br>
</b></font><font size="2"><b><%=rsUser("instalaciones15")%><br>
</b></font><font size="2"><b><%=rsUser("instalaciones16")%><br>
</b></font><font size="2"><b><%=rsUser("instalaciones17")%></b></font><br>
<font size="2"><b><%=rsUser("instalaciones18")%><br>

<br>
</b></font></p></td>
<td width="31%" height="0" align= bgcolor="#F78009" bgcolor="#F78009"><p><font size="2"><b><%=rsUser("instalaciones58")%><br>
<%
rsUser.close
set rsUser = nothing
%>
<%
dbconn.close
set dbconn = nothing
%>
  #2 (permalink)  
Antiguo 28/11/2008, 17:05
Avatar de GUAPOBEN  
Fecha de Ingreso: noviembre-2002
Ubicación: Mexico DF
Mensajes: 204
Antigüedad: 22 años, 5 meses
Puntos: 1
Respuesta: asp problema como hace if

Hola, pues no encontre tu IF, pero bueno.

Creo que podrias hacer algo asi:

<%if rsUser("instalaciones5")>0 then%><font size="2"><b><%=rsUser("instalaciones5")%></b></font><%end if%>

Con esto en cada una de las lineas debera de ver si existe algo en el campo aparecera la linea si no no la pintara en el html.

Espero te sirva.

PD: Se podria cambiar el >0 por otra cosa como ="" etc,etc.
__________________
Guapo Ben
Servidor y Amigo :adios:
  #3 (permalink)  
Antiguo 28/11/2008, 17:31
 
Fecha de Ingreso: octubre-2007
Mensajes: 106
Antigüedad: 17 años, 6 meses
Puntos: 0
Respuesta: asp problema como hace if

no me funciono me da error...

en que parte del codigo lo pusiste tu ?..

saludos
  #4 (permalink)  
Antiguo 28/11/2008, 17:35
Avatar de GUAPOBEN  
Fecha de Ingreso: noviembre-2002
Ubicación: Mexico DF
Mensajes: 204
Antigüedad: 22 años, 5 meses
Puntos: 1
Respuesta: asp problema como hace if

Si pones el error que te arroja y el codigo con la linea del error que te manda podriamos revisarlo.

Saludos.
__________________
Guapo Ben
Servidor y Amigo :adios:
  #5 (permalink)  
Antiguo 28/11/2008, 17:45
 
Fecha de Ingreso: octubre-2007
Mensajes: 106
Antigüedad: 17 años, 6 meses
Puntos: 0
Respuesta: asp problema como hace if

ahora no me da el error ajajaj

pero lo que yo quiero es ejemplo si la instalacion5 no la chequeo la persona , yo cuando llame a la base de datos me aparesca instalacion4 no quiero q aparesca instalacion4
instalacion6
instalacion6
ese espacio blanco es el que yo digo..

gracias
  #6 (permalink)  
Antiguo 28/11/2008, 17:46
 
Fecha de Ingreso: octubre-2007
Mensajes: 106
Antigüedad: 17 años, 6 meses
Puntos: 0
Respuesta: asp problema como hace if

.............instalacion4......................... .....instalacion4.........
.............instalacion6......................... ....................................
.................................................. ............instalacion6........

ese espacio no lo quiero....
  #7 (permalink)  
Antiguo 28/11/2008, 18:03
Avatar de GUAPOBEN  
Fecha de Ingreso: noviembre-2002
Ubicación: Mexico DF
Mensajes: 204
Antigüedad: 22 años, 5 meses
Puntos: 1
Exclamación Respuesta: asp problema como hace if

Charros, tal vez estoy muy sope, pero yo ya no te entendi nada.

Lo que yo te puse es un IF para que al traerte los datos de tu base valide si existe algo en el campo si esta vacio no pinte la linea de instalacion4 por decirlo asi, sin embargo no se a que te refieres con el espacio en blanco.

El if lo tendrias que poner en cada linea que deseas mostrar algo asi:

<%if rsUser("instalaciones5")="OK" then%><font size="2"><b><%=rsUser("instalaciones5")%></b></font><%end if%>
<%if rsUser("instalaciones6")="Ok" then%><font size="2"><b><%=rsUser("instalaciones6")%></b></font><%end if%>
<%if rsUser("instalaciones7")="OK" then%><font size="2"><b><%=rsUser("instalaciones7")%></b></font><%end if%>

Por ejemplo en los if de arriba se le esta diciendo: Si instalaciones5 es igual a OK entonces pintalo, si este viniera vacio no pintaria esa linea.

Ojala y me haya explicado mejor.

Saludos cordiales.
__________________
Guapo Ben
Servidor y Amigo :adios:
  #8 (permalink)  
Antiguo 29/11/2008, 08:16
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 3 meses
Puntos: 146
Respuesta: asp problema como hace if

Esta muy fácil tu problema

Solo debes de poner un ciclo como este para únicamente pintar los campos que tengan información:
Código:
  if Not rs.Eof then
	   For i=0 To rs.Fields.Count-1 
		    if (not IsNull(rs.Fields(i))) and (LEN(Trim(rs.Fields(i).value))>0) Then%>
		 <p><font size="2"><b><%=rs.Fields(i).name & " = " & rs.Fields(i) & " (" & LEN(Trim(rs.Fields(i).value)) & ")"%></b></font><br>
<%      End if
		 Next
and that's all my folk
  #9 (permalink)  
Antiguo 30/11/2008, 09:22
 
Fecha de Ingreso: noviembre-2008
Mensajes: 13
Antigüedad: 16 años, 5 meses
Puntos: 0
Pregunta Respuesta: me hace falta ayuda

Brother me podias decir como encontrar ayuda sobre como programar ASP con JavaScript, no otro Script, donde las variables se declaran con var y no con:

Set
Dim

y los ciclos se hacen como en c++

si acudes aydarme escribeme en el foro o ami email:
[email protected]
  #10 (permalink)  
Antiguo 01/12/2008, 06:48
 
Fecha de Ingreso: octubre-2007
Mensajes: 106
Antigüedad: 17 años, 6 meses
Puntos: 0
Respuesta: asp problema como hace if

hola

gracias por la ayuda pero en que parte te mi codigo tengo que agregar eso que me dices la verdad es que no se donde....
if Not rs.Eof then
For i=0 To rs.Fields.Count-1
if (not IsNull(rs.Fields(i))) and (LEN(Trim(rs.Fields(i).value))>0) Then%>
<p><font size="2"><b><%=rs.Fields(i).name & " = " & rs.Fields(i) & " (" & LEN(Trim(rs.Fields(i).value)) & ")"%></b></font><br>
<% End if
Next
  #11 (permalink)  
Antiguo 01/12/2008, 08:22
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 3 meses
Puntos: 146
Respuesta: asp problema como hace if

Cómo que dónde ? si analizas el código, lo que hace es pintar una linea por cada campo del recordset siempre y cuando tenga información, es exactamente lo que quieres, entonces debe de ir en lugar de todos los response.write abreviados que tienes.

¿ya más o menos?
  #12 (permalink)  
Antiguo 01/12/2008, 08:24
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 18 años, 4 meses
Puntos: 126
Respuesta: asp problema como hace if

Con permiso Maykire

Código asp:
Ver original
  1. Set rsUser = Server.CreateObject("ADODB.Recordset")
  2. rsuser.Open sql, dbconn, 3, 3
  3. if Not rsuser.Eof then
  4. ......
  5. <td width="30%" height="0" align=bgcolor="#F78009" bgcolor="#F78009">
  6. <%
  7. For i=0 To rs.Fields.Count-1
  8. if (not IsNull(rs.Fields(i))) and (LEN(Trim(rs.Fields(i).value))>0) Then%>
  9. <p><font size="2"><b><%=rs.Fields(i).name & " = " & rs.Fields(i) & " (" & LEN(Trim(rs.Fields(i).value)) & ")"%></b></font><br>
  10. <% End if
  11. Next

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;" />
  #13 (permalink)  
Antiguo 01/12/2008, 08:36
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 3 meses
Puntos: 146
Respuesta: asp problema como hace if

No hay problema Adler, solo que hay que hacer un ligero apunte, ese código lo hice así a lo rápido para comprobar que funciona, luego lo copié y pegué suponiendo que gabo543 lo entendería lo suficiente para modificarlo, la impresión así como lo puse imprime el nombre del campo que tiene información y su contenido, así como la longitud entre paréntesis, lo que ne realidad hay que poner es un condicional para que funcione solo con los campos con prefijo "instalaciones", algo así como esto (permiso para usar tu ajuste ):

Código:
      Set rsUser = Server.CreateObject("ADODB.Recordset")
      rsuser.Open sql, dbconn, 3, 3
      if Not rsuser.Eof then
      ......
      <td width="30%" height="0" align=bgcolor="#F78009" bgcolor="#F78009">
      <%
      For i=0 To rs.Fields.Count-1
      if LEFT(rs.Fields(i).name, 13) = "instalaciones" Then
         if (not IsNull(rs.Fields(i))) and (LEN(Trim(rs.Fields(i).value))>0) Then%>
</b></font><font size="2"><b><%=rs.Fields(i).value%><br>
      <% 
          End If
      End if
      Next
  #14 (permalink)  
Antiguo 01/12/2008, 10:35
Avatar de GUAPOBEN  
Fecha de Ingreso: noviembre-2002
Ubicación: Mexico DF
Mensajes: 204
Antigüedad: 22 años, 5 meses
Puntos: 1
De acuerdo Respuesta: asp problema como hace if

A pues mira que esto si es una solucion completa.

Hasta a mi me servira.

Saludos.
__________________
Guapo Ben
Servidor y Amigo :adios:
  #15 (permalink)  
Antiguo 02/12/2008, 04:41
 
Fecha de Ingreso: octubre-2007
Mensajes: 106
Antigüedad: 17 años, 6 meses
Puntos: 0
Respuesta: asp problema como hace if

hola muchas gracias por todo lo que haz hecho pero sabes aun no puedo hacer funcionar el codigo que haz hecho lo podrias poner tu dentro de este codigo para guiarme ya que no me resulta no se porque...

<!--#include file="inc_top.asp"-->
<%

%>

<!--#include file="protected.asp"-->
<!--#include file="dbconn.asp"-->
<%
Dim sql,rsUser
sql = "SELECT * FROM Users WHERE username = '" & username & "'"
Set rsUser = Server.CreateObject("ADODB.Recordset")
rsuser.Open sql, dbconn, 3, 3
%>
<style type="text/css">
<!--
#Layer1 {
position:absolute;
left:15px;
top:108px;
width:155px;
height:394px;
background-color:#ECE9D8;
layer-background-color:#ECE9D8;
border:1px none #000000;
z-index:1;
}
.Estilo4 {
font-size: 14px;
font-weight: bold;
}
.Estilo5 {font-size: 14px}
-->


</style>


<body bgcolor="">
</span></td>

<td width="30%" height="0" align=bgcolor="#F78009" bgcolor="#F78009"><p><font size="2"><b><%=rsUser("instalaciones1")%></b></font><br>
<font size="2"><b><%=rsUser("instalaciones2")%><br>
</b></font><font size="2"><b><%=rsUser("instalaciones3")%><br>
</b></font><font size="2"><b><%=rsUser("instalaciones4")%><br>



<%
rsUser.close
set rsUser = nothing
%>
<%
dbconn.close
set dbconn = nothing
%>

tu codigo

Set rsUser = Server.CreateObject("ADODB.Recordset")
rsuser.Open sql, dbconn, 3, 3
if Not rsuser.Eof then
......
<td width="30%" height="0" align=bgcolor="#F78009" bgcolor="#F78009">
<%
For i=0 To rs.Fields.Count-1
if LEFT(rs.Fields(i).name, 13) = "instalaciones" Then
if (not IsNull(rs.Fields(i))) and (LEN(Trim(rs.Fields(i).value))>0) Then%>
</b></font><font size="2"><b><%=rs.Fields(i).value%><br>
<%
End If
End if
Next

podrias poner tu codigo en el mio para saber donde es...
  #16 (permalink)  
Antiguo 03/12/2008, 10:21
 
Fecha de Ingreso: octubre-2007
Mensajes: 106
Antigüedad: 17 años, 6 meses
Puntos: 0
Respuesta: asp problema como hace if

alguien me ayuda por favor...
  #17 (permalink)  
Antiguo 03/12/2008, 14:16
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 3 meses
Puntos: 146
Respuesta: asp problema como hace if

Mira, si no siquiera puedes (o quieres) colocar ese código dentro del tuyo, dudo mucho que puedas con algún otro asunto que surgiera en un futuro próximo, en los foros normalmente solo encuentran ayudas parciales, guías, ya que uno no tiene tanto tiempo como para estar analizando los códigos de otras personas, máxime cuando esa persona no quiere siquiera pensarle tantito en analizar la ayuda que recibió, y eso lo digo por como "incorporaste" el código planteado aquí al tuyo, solo lo copiaste y lo pegaste ¡¡con los puntos suspensivos y todo!!

Tu código abre un recordset, asume que tendrá información (ahí existe un potencial error) y se agarra pintando campos ..... aaahhh, pues exactamente eso hace el código que te pusimos, entonces es ahí donde lo deberías de modificar para que te sirviera ....

Código:
rsuser.Open sql, dbconn, 3, 3
For i=0 To rsuser.Fields.Count-1
if LEFT(rsuser.Fields(i).name, 13) = "instalaciones" Then
if (not IsNull(rsuser.Fields(i))) and (LEN(Trim(rsuser.Fields(i).value))>0) Then%>
</b></font><font size="2"><b><%=rsuser.Fields(i).value%><br>
<%
End If
End if
Next
rsUser.close

Cabe mencionar que el diseño del código que pones esta completamente incorrecto, no defines tablas, no abres/cierras etiquetas, tienes atributos sin valor ... vamos ¿que es esto?

Cita:
<body bgcolor="">
</span></td>
¿para qué el bgcolor? ¿dónde abres la etiqueta SPAN? ¿dónde defines la etiqueta TABLE y donde inicias el TR y el TD?

En fin, suerte con tu trabajo
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 15:34.