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

salto de linea en textarea + if/else

Estas en el tema de salto de linea en textarea + if/else en el foro de ASP Clásico en Foros del Web. tengo un pequenyo formulario con 3 campos modelo, specs y link pasra dar de alta productos Código: <% Response.Buffer = true dim cnn,rst ' Creamos ...
  #1 (permalink)  
Antiguo 18/07/2007, 09:22
 
Fecha de Ingreso: julio-2003
Ubicación: Barcelona
Mensajes: 142
Antigüedad: 20 años, 10 meses
Puntos: 1
salto de linea en textarea + if/else

tengo un pequenyo formulario con 3 campos modelo, specs y link pasra dar de alta productos

Código:
<%
Response.Buffer = true
dim cnn,rst
' Creamos la conexión a la base de datos sin DSN
set cnn = Server.CreateObject("ADODB.Connection")
set rst = Server.CreateObject("ADODB.RecordSet")
cnn.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("/cgi-bin/productos.mdb"))
sqltext = "SELECT * FROM productos"
rst.Open sqltext,cnn,3,3

'Recogemos los datos y validamos que no haya ningun campo vacio
dim modelo, specs, link

modelo = Request.Form("modelo")
specs = Request.Form("specs")
namm07 = Request.Form("link")

if modelo = "" or specs = "" link = ""then
error = "Faltan datos"

Response.Write error
Response.End
end if

'Si está todo correcto, procedemos a ingresar los datos a la base de datos

rst.AddNew
rst("modelo") = modelo
rst("specs") = specs
rst("link") = link


rst.update

'Terminamos e imprimimos un mensaje

Response.Write("Todo ok")
%>




<html>

<head>
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>EDIROL Iberia</title>
</head>

<body bgcolor="#FFFFFF">

  
  <form method="POST" action="alta_producto.asp">

  <table>
    <tr>
	<td>producto</td>
	<td><input name="modelo" size="40"></td>
    </tr>
	
    <tr>
    <td>specs</td>
    <td><textarea name="specs" cols=50 rows=14></textarea> </font></td>
    </tr>
	
    <tr>
	<td>link</td>
	<td><input name="link" size="40"></font></td>
    </tr>
	
    <tr>
    <td><input type="submit" value="Dar de Alta" name="enviar" style="font-family: Verdana"></font></td>
    </tr>
    </table>

</body>

</html>
el tema es que querrian que me respetara los saltos de lines del textarea y que solo me mostrara la fila de la tabla del link en el caso de que link tuviera contenido. +sabeis como lo puedo hacer



Código:
<%
'Dimension variables
Dim adoCon 			
Dim rsGuestbook		
Dim strSQL			

Set adoCon = Server.CreateObject("ADODB.Connection")
ado.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("/cgi-bin/productos.mdb"))
'Set an active connection to the Connection object using DSN connection

'adoCon.Open "DSN=guestbook"
Set rsGuestbook = Server.CreateObject("ADODB.Recordset")
strSQL = "SELECT * FROM edirol order by modelo asc;"


rsGuestbook.Open strSQL, adoCon

'Loop through the recordset
Do While not rsGuestbook.EOF
	
	'escribeo la tabla
	Response.Write ("<center><TABLE BORDER=1 WIDTH=500>")
	Response.Write ("<TR><td>" & rsGuestbook("modelo") & "</Td>")
	Response.Write ("<td><a href=" & rsGuestbook("link") & "></a></td>")
	Response.Write ("<td>" & rsGuestbook("specs") & ""</td></TR>)


	'Move to the next record in the recordset
	rsGuestbook.MoveNext

Loop

'Reset server objects
rsGuestbook.Close
Set rsGuestbook = Nothing
Set adoCon = Nothing
%>
  #2 (permalink)  
Antiguo 18/07/2007, 10:42
Avatar de JuanRAPerez
Colaborador
 
Fecha de Ingreso: octubre-2003
Mensajes: 2.393
Antigüedad: 20 años, 7 meses
Puntos: 27
De acuerdo Re: salto de linea en textarea + if/else

seria si no me equivoco



link = rsGuestbook("link")
if link = "" then
Response.Write ("<td></td>")
else
Response.Write ("<td><a href=" & link & "></a></td>")
end if
specs = replace(rsGuestbook("specs"),vbCrlf,"<br>")
Response.Write ("<td>" & specs & ""</td></TR>)

Suerte

lup!
__________________
JuanRa Pérez
San Salvador, El Salvador
  #3 (permalink)  
Antiguo 28/07/2007, 13:04
 
Fecha de Ingreso: julio-2003
Ubicación: Barcelona
Mensajes: 142
Antigüedad: 20 años, 10 meses
Puntos: 1
Re: salto de linea en textarea + if/else

en el tema de los saltos de linea, creo haber seguido al pie de la letra tus indicaciones, pero me da error.
¿sabes donde puede estar?

Código:
Error de Microsoft VBScript en tiempo de ejecución (0x800A005E)
Uso no válido de Null: 'replace'
/webs/product_update4.asp, línea 42
este es el codigo:
Código:
Response.Write ("<TR><td width=150>" & rsGuestbook("modelo") & "</Td>")

descripcion = replace(rsGuestbook("descripcion"),vbCrlf,"<br>")
Response.Write ("<td width=300>" & descripcion & "</td></TR>")
  #4 (permalink)  
Antiguo 01/08/2007, 16:47
Avatar de gorka_22  
Fecha de Ingreso: septiembre-2003
Mensajes: 95
Antigüedad: 20 años, 9 meses
Puntos: 1
Re: salto de linea en textarea + if/else

El Replace no le llega nada, al tener valor nulo te da error.
Pon:

Código:
if rsGuestbook("descripcion")<> "" then
descripcion = replace(rsGuestbook("descripcion"),vbCrlf,"<br>")
else
descripcion = "No me llega nada" 'Pon el texto que quieras
end if
La primera linea creo que tambien funcionaría así:
Código:
if not isNull rsGuestbook("descripcion") then
Creo que así funcionará...
  #5 (permalink)  
Antiguo 01/08/2007, 16:51
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
Re: salto de linea en textarea + if/else

Cita:
Iniciado por gorka_22 Ver Mensaje
El Replace no le llega nada, al tener valor nulo te da error.
Pon:

if rsGuestbook("descripcion")<> "" then
descripcion = replace(rsGuestbook("descripcion"),vbCrlf,"<br>")
else
descripcion = "No me llega nada" 'Pon el texto que quieras
end if

La primera linea creo que tambien funcionaría así:

if not isNull rsGuestbook("descripcion") then

Creo que así funcionará...
O bien:
Código:
descripcion = replace(rsGuestbook("descripcion")&"",vbCrlf,"<br>")
Saludos
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #6 (permalink)  
Antiguo 03/08/2007, 04:19
Avatar de gorka_22  
Fecha de Ingreso: septiembre-2003
Mensajes: 95
Antigüedad: 20 años, 9 meses
Puntos: 1
Re: salto de linea en textarea + if/else

Cita:
Iniciado por u_goldman Ver Mensaje
O bien:
Código:
descripcion = replace(rsGuestbook("descripcion")&"",vbCrlf,"<br>")
Saludos
Buena solución, si señor...
  #7 (permalink)  
Antiguo 05/08/2007, 15:48
 
Fecha de Ingreso: julio-2003
Ubicación: Barcelona
Mensajes: 142
Antigüedad: 20 años, 10 meses
Puntos: 1
Re: salto de linea en textarea + if/else

perfecto, funciona.

Muchas gracias por vuestra colaboracion
  #8 (permalink)  
Antiguo 27/08/2007, 17:26
 
Fecha de Ingreso: julio-2003
Ubicación: Barcelona
Mensajes: 142
Antigüedad: 20 años, 10 meses
Puntos: 1
Re: salto de linea en textarea + if/else

Lo utilizo en este otro codigo y no hace nada. ¿sabeis que algo mal?

Código:
Response.Write ("<td class=modelo>" & rs.fields("modelo") & "</Td>")
descripcion = replace(rs.fields("descripcion")&"",vbCrlf,"<br>")
Response.Write ("<td class=descripcion>" & rs.fields("descripcion") & "</Td>")
gracias
  #9 (permalink)  
Antiguo 28/08/2007, 01:30
 
Fecha de Ingreso: enero-2006
Ubicación: Torroles (Costa der Só)
Mensajes: 1.017
Antigüedad: 18 años, 5 meses
Puntos: 7
Re: salto de linea en textarea + if/else

Como te dijo gorka_22, es que no le llega nada desde rs.fields("descripcion"). Vamos, que ese campo es nulo o esta vacio. Eso quiere decir que no se ha hecho correctamente la inserción de datos en ese campo. Chequea si se insertan datos en la página correspondiente.



Un saludo
__________________
"Tus pecados son el estiércol sobre el que florecerán las flores de tus virtudes" - Gerald Messadié -
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 13:26.