Anuncios clasificados

Necesitaría que me ayudases en lo siguiente:
Debo hacer una web donde se te cobra por meter anuncios clasificados por palabras. En la misma tienes, por un lado, un campo de texto, donde metes el mensaje (por ejem. "vendo piso en Madrid"), el cual cuenta las palabras que has insertado (en este caso 4). Por otro lado debes seleccionar el periódico donde deseas insertar el anuncio (El país, el mundo, abc...). Cada periódico tiene un precio POR PALABRA dependiendo de si vas querer el anuncio entre semana o si es festivo. Por último, hay un calendario donde eliges los días de publicación del anuncio.
Así, debe calcular el número de palabras, multiplicarlo, por el precio del periódico elegido, dependiendo de si es festivo o no los días seleccionados (porque podría elegir un domingo y un martes, por ejemplo). La página debería ser, el funcionamiento, no el diseño, como www.publicidadcorbera.com El problema es que no se muy bien como empezar. Un familiar me ha hecho una base de datos con access que hace eso (sin lo de contar las palabras, porque se le olvidó), pero tampoco se muy bien como hacer eso mismo en HTML. Ya he hecho algo en ASP (www.aunpaso.com), pero esto no se como empezarlo... ¿me podrías ayudar?

13 Respuestas

Respuesta
1
Pedroche, primero y principal tienes que sabes que para empezar este tipo de emprendimientos tienes que tener una idea del tipo de programación que utilizaras y, como así también, su diseño. Esto realmente acelerara el trabajo a la hora de su desarrollo.
En este caso en particular, creo que deberías empezar por las funciones básicas de tu proyecto:
- Contar palabras: Esta seria una FUNCIóN que la podrías implementar como un SCRIPT en idioma Vbscript. Retornaría un numero entero resultado de la cuenta entre palabras (nota: siempre la primera y la última palabra generan problemas). Se pueden usar varios métodos, como pasar el texto a un vector o directamente trabajarlo desde el form o como un TextString emtre otros.
- Retornar el costo: Esta seria otra FUNCIóN que se conectaría a la base de datos recbiendo cierto parámetros para calcular el valor exacto.
Algunas ideas te deje para empezar creo. Así que pensá por que hay miles de métodos y siempre nuevos para descubrir.
No te olvides de darle puntaje a respuesta y si te quedaste con dudas hacemelas llegar que respondo con gusto.
FedeNuke - C2[Group]
[email protected]
;-)
Respuesta
1
Pufff, un poco largo de contestar, pero vamos a intentar hacerlo sencillo tienes que hacer lo siguiente:
1) Recoger la información de un formulario (a lo mejor esto te sirve de ejemplo, http://www.canalasp.net/prueba.htm, puedes utilizar el calendario que usan en la página que me das como referencia)
2) Evaluar los datos obtenidos y hacer las consultas sql pertinentes para obtener el precio final del anuncio.
Con los datos obtenidos, tienes que averiguar el numero de palabras y los días que son festivos, ya que los demás datos los tienes.
Para averiguar el numero de palabras puedes usar lo siguiente:
<%
totalpalabras = ubound(split(request.form("palabras")," "))
%>
Y para saber que días son festivos, utiliza la función weekday(fecha) para cada día, que te devolverá el numero del día de la semana
1->Domingo
2->Lunes
...
7->Sábado
Por supueso que es mucho más complejo de programar que todo esto, pero bueno, ya tienes por donde empezar y animo!.
Respuesta
1
Difícil porque no sé el nivel de asp que tienes. Yo haría tres tablas:
1. Tabla periódicos:
id_periodico - clave única
nombre_periódico
PrecioPalabra_FindeSemana
PrecioPalabra_Diario
2. Tabla solicitudes:
id_solicitudes - cl.única (autonumérico)
fecha_solicitud
Usuario (aquí guardas lo que quieras)
Frase
3. Tabla fechas solicitadas:
id_solicitudes - cl.secundaria
dia_anuncio - (fecha)
Por cada registro de la tabla 2 tendremos n registros de tres, teniendo en cuenta que el usuario solicita el anuncio para que aparezca en varias fechas.
Eso en lo referente a la bD, sólo has de contar el número de palabras (número de espacios más uno) buscar el periódico solicitado, ir al campo adecuado dependiendo de si es o no fin de semana y el precio que encuentres multiplicarlo por el número de palabras. Si tienes más dudas, ya sabes...
Respuesta
1
Así a primera vista lo primero que te debería buscar es una función que te contará el nº de palabras del anuncio, una vez que lo tengas(función en asp, javascript,...), mira las funciones de asp (vbscript) que te permiten ver que día de la semana es para que la fecha que te pasen ver si es festivo o no, y poder multiplicar el precio adecuadamente, estos precios deberán estar en una base de datos.
Una vez que lo tengas ya podrás calcular las tarifas a cobrar.
Nota: Mirá las funciones de vbscript, seguramente habrá alguna que te cuente las palabras del texto.
Espero que te haya ayudado, si necesitas más no dudes en escrirme de nuevo, y te intentaré responder más concretemente.
Respuesta
1
Lo que necesitas no es muy complejo, ¿dime tienes msn?, ahí te puedo ir echando una manito...
El contador de palabras no es complejo, tengo unas funciones por ahí y un calendario tampoco lo es... je je...
Contáctame si puedes y ahí hablamos más..
Saludos
Alejandro
[email protected]
Respuesta
1
No es difícil, y te puedo ayudar. Necesito que me des tiempo porque justo ahora estoy de salida. La verdad, no es difícil lo que necesitas. Esta noche te digo cómo debes hacerlo.
William.
Respuesta
1
Esto lo he encontrado en una web. A ver si te sirve. Si te hace falta algo más dímelo.
Un saludo
Function ContarPalabras ( texto )
'He sacado este código a una función para que lo podáis reutilizar
'Y contar las palabras de un fichero, o de un campo de base de datos, etc
'Convierto los retornos de carro y las tabulaciones en espacios
texto = Replace (texto, VbCr, " ")
texto = Replace (texto, VbLf, " ")
texto = Replace (texto, VbCrLf, " ")
texto = Replace (texto, VbTab, " ")
'Elimino el espacio en blanco de antes y después
texto = Trim(texto)
'Recorro la cadena y voy reduciendo los múltiples espacios a uno solo
while InStr(1, texto, " ", 1)
texto = Replace(texto, " ", " ")
wend
'Para contar el número de palabras, convierto la cadena en un vector
'cortando en los espacios, y saco UBound (máximo índice disponible) + 1
'Sumo uno debido a que los vectores comienzan en 0
ContarPalabras = UBound( Split(texto, " ", -1, 1)) + 1
End Function 'ContarPalabras
'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%>
Respuesta
1
Para implementar ese sistemas, existen herramientas nuevas de desarrollo que podrían adaptarse muy bien a tu caso, .NET, aspx, c# utilizando todo este tipo de herramientas, desarrollando el modelo cliente-servidor,
esto te permite hacer los procesos en el servidor, y devolverle al cliente el resultado.
Respuesta
1
No se exactamente lo que quieres pero si lo que deseas es una función que cuente las palablas dado un texto (pe en la variable texto), en asp seria así:
iPalabras = 0
iPos = inStr(0,texto," ")
do while iPos > 0
iPalabras = iPalabras + 1
iPos = inStr(iPos,texto," ")
loop
Response.write "Total palabras: " & iPalabras
Respuesta
1
Para contar las palabras te doy como consejo que al ponerlo en el formulario cambie con una función que hay los espacios por un signo cualquier y que cuentas cuantas veces se repide dicho signo, así sabes cuantas palabras has puesto, también puedes contar con un LEN cuantos caracteres ha insertado, pero te recuerdoq ue debes tener un hosting tipo Windows 2000 como el que ofrece www.lomasbuscado.net o www.dinahosting.com, lo del calendario es algo más jodido pero se puede hacer haciendo una tabla en la base de datos, pero vamos si lo tienes en la BD simplemente mira como está hecho y ve pasándolo a ASP, pero para esto tienes que saber programar en VB o en ASP ya que la cantidad de comandos y funciones para lo que pide es algo complicado, de hecho te digo que si una web te hiciera lo que puedes por simplemente so sin pensar en diseño gráfico te costaría algo más de 170.000 pts como mínimo, ya que cosas más simples cuestan bastante más
Respuesta
1
Yo te comento un poco como lo solucionaría. Si te surgen dudas de como implementarlo, me volvés a preguntar y no hay problema.
Para contar las palabras, hay una función que se llama split, que recibe un string y un separador. Lo que hace es cortar el string en pedazos cada vez que encuentra el separador. Por ejemplo, split("Hola,Como,Estas", ",") devolvería un vector de 3 posiciones (1=Hola, 2=Como, 3=Estas). Con ese vector, según las posiciones que tiene, podes saber cuantas palabras. La cosa sería así:
unVector = split("El texto que te escribe el usuario"," "). Con " " le indicas que corte cuando encuentra un espacio. Después vos, con el vector que te devolvió sacás la cantidad de palabras.
Espero haberme explicado. Cualquier duda decime.
Respuesta
1
No entiendo bien todavía que tienes hecho y que no, te puedo ayudar pasándote una función que cuenta las palabras de un texto:
function contarpalabras(texto)
dim c, m
c=0
m=split(texto, " ")
c=ubound(m)
erase m
contarpalabras=c
end function
Avisame cualquier cosa.
Respuesta
1
No dispongo de tiempo ni espacio suficiente para explicarlo. Veo que, de entrada, tienes muy claro lo que quieres hacer, por lo que puedes empezar por donde quieras. Hazte un contador de palabras (es tan fácil como entrar el texto en un array mediante split(<texto>," ") y obtener el número de elementos del array). Si en la base de datos tienes una tabla con los precios por periódico, sólo tienes que multiplicar.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas