PDA

Ver la versión completa : Generar HTML con VB



KIFO
25-08-2003, 13:49
Buenas,

Necesito hacer un programilla ke me genere un HTML donde dentro de unos campos establecidos figuren unos datos ke recojo en unos textbox.
El problema viene a la hora de pegar el código HTML (que tiene ke ser fijo, un código ke ya tengo), la variable no me recoje el codigo ni me inserta bien esos datos en los campos y no me sale...

¿Alguna mente instruida?

NeoGenessis
02-09-2003, 11:23
-Primero en que leguaje.
-Segundo puedes ser algo mas explicito. No pillo muy bien tu problema.

Yo hice un programa en Visual Basic que convertia una foto en una Web de Ascii-art. Asi que tal vez te pueda ayudar.

KIFO
02-09-2003, 11:45
-El lenguaje lo pone en el titulo del thread: HTML con VB (VB = Visual Basic)
-Pues a ver, tengo ke hacer un programa ke genere una pagina web pero en la ke hay unos campos ke tienen ke ser dinamicos en cada generación de página. Es decir, ke el usuario meta unos datos en el programa en VB y ke esos datos luego salgan formateados e introducidos en la página web.

|RooT|
02-09-2003, 18:24
Hombre explicado en lenguaje basico lo que lo que yo tengo hecho en C es lo siguente.
Tengo un fichero que es la plantilla, es decir un HTML que seria la plantilla principal .
Por ponerte un ejemplo...

<html>
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<TITLE>%TITLE%</TITLE>
</head>

Entonces haria que fuera leyendo todo la plantilla y se fuera guardando en un fichero HTML hasta que se encontrara una variable en este caso %TITLE% , metemos un pequeño parser que lea la Variable y mire que variable es y después añadimos a la salida del HTML lo que indica la variable que en este caso seria el titulo. Se pueden hacer de otras maneras pero de esta manera tan solo tienes que editarte una plantilla para canviar los formatos.

KIFO
03-09-2003, 10:14
Eso esta claro. El problema es meter el código con el formato HTML (saltos de carro y demás) y luego aplicarle las variables.

NeoGenessis
04-09-2003, 14:40
Para la generacion de partes dinamicas usa variables de tipo String.
Por ejemplo, si quieres que se pueda pariar el caption puede hacer algo como:

A$="<caption=" & text1.text & ">" & vbcrlf
? #1,a$

de ese modo añades el valor del text1 y ademas insertas un salto de linea al final. podrias ponerlo todo en una linea:

? #1,"<caption=" & text1.text & ">" & vbcrlf

las posibilidades se amplian al poder usar condicionales y convertidores de mayusculas / minusculas y datos numericos (ucase$ ,val ,...). Si necesitas intruducir comillas o cosas raras en el archivo usa los codigos ascii, por ejemplo, si no me equivoco las comillas son el 34 ==> chr$(34).

Siento la pregunta del lenguaje, pero es que ultimamente voy algo empanado. :0=

Por ultimo comentarte lo que seguro ya sabes: Para escribir en un archivo ascii puedes usar Print o Write (yo uso casi siempre Print (o ?) )
y los resultados no son exactamente iguales.

Por ultimo algo que quiza no te interese: si quieres poner color a las fuentes o al fondo (o lo que sea) y lo quieres especificar como valor rgb ni se te ocurra usar Hex$(rgb(r,g,b)) para obtener la cadena en hex, por que los colores no te saldran bien. Si te interesa ya diras algo.

KIFO
04-09-2003, 18:46
NeoGenessis, la solución ke tú me das ya la he pensado e intentado, pero gracias por el interés. El problema de esto es que ese código es muy largo... y no voy a usar '&' hasta ke me acabe el código porque me puedo pasar dias enteros haciendolo...

NeoGenessis
05-09-2003, 11:22
Creo que empiezo a entender lo que tu pretendes:
Lo que quieres es hacer como si editaras un documento de word, Verdad?

eso no es posible. Puedes visualizar la pagina con el internet control (o microsoft internet explorer control o algo asi). Ese control tambien lo usa mucha gente para mostrar gift animados. Pero eso no te permitira modificar la pagina directamente y menos guardarla.

De todos modos no veo el problema en usar el codigo de la paguina que ya tienes. Dices que es mucho curro??? pero si eres programador (lease sabes programar) haz que curre el ordenador que pa eso sirve.

Hazte un programa que procese la pagina y la deje como tu quieras. Por ejemplo. Hace poco encontre algo de informacion sobre los drivers de monitor en Win9x y me hice un programa que si le das los datos te crea uno pa tu monitor (refresco, resoluciones,...). La cantidad de texto era Bestial (mas de 50 lineas). Asi que cogi un driver ya echo. Le quite lo que no queria, y hice un prog que leia el texto en una cadena
ejemplo:
Input #1,A$
de ese archivo y en otro archivo imprimia:
Print #2,"Print #outfile," & chr$(34) & A$ & chr$(34)

Como es un bucle no hay problema, el hace el trabajo sucio. Luego compruevas el resultado y modificas lo que quieras. No es y tan chungo. El problema puede ser la existencia de (,) en el texto original.
Te sirve de algo????

KIFO
05-09-2003, 11:57
mmmmmmmmmmmmm... Si, me ha servido. Ya lo he conseguido. No 'exactamente' lo ke kería pero esta ya hecho. Usando los 'bucles del trabajo sucio' como los llamas y unas variables y unos textbox escondidos.
Gracias!!! Saludos!!