![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Hola,
Ya he afinado un poquitín más el asunto y he actualizado el archivo Zip que contiene la última versión del código fuente de Loturak, por si queréis echar un vistazo, lo digo. ![]() En cuanto a lo que dices Emilio, me queda la duda de no haber utilizado (siempre se está a tiempo) una Cookie, pero, desde luego, no creo que el tema haya quedado farragoso. Fíjate. ¿Qué ha sido necesario hacer? Crear una tabla en la base de datos de nombre Opciones, con tres campos, el ID de las opciones, el ID del usuario de estas, y el propio campo que contiene las opciones. Ahora bien. ¿Ha sido necesario hacer algo más en la base de datos? No. ¿Hemos tenido que añadir algo a la tabla Opciones para que la cosa funcione? No. ¿Los usuarios notarán algo raro mientras no cambien sus opciones? No. ¿Básicamente qué es lo que hacemos? Hemos escrito una clase Opciones para tratar con estas en la base de datos de una forma más o menos sencilla... y la hemos escrito en un momento, como aquél que dice, y sabemos ya que puede ampliarse... que abre posibilidades... De acuerdo, pero, ¿realmente es complicado acceder a las opciones, determinar qué camino a seguir en función de estas, qué es lo que nos cuesta averiguar la información que nos ofrece una opción? Veamos la única que existe ahora mismo, ¿cómo la utilizamos? Código PHP:
Pero, ¿Y qué hacemos para actualizar las opciones? Veámoslo: Código PHP:
Ahora bien, ¿dónde ves la complicación en todo esto Emilio? Estoy dispuesto a rectificar si encuentro que lo que hasta ahora hay hecho sirve, por supuesto. ![]() Al contrario, yo creo que la cosa ha quedado tan sencilla que escama un poco... que seguro que se están dejando cabos sueltos, pero, la opción añadida actualmente está cumpliendo, y, al menos similares a esa, estamos ya seguros de poder añadir más si nos es preciso, y con relativa sencillez. Última edición por dec fecha: 05-09-2006 a las 00:46:39. |
|
#2
|
||||
|
||||
|
La verdad que yo tampoco entendo el pero Emilio. Lo que ha hecho dec aquí es sencillo y servirá para guardar las opciones del usuario. Cierto que si sólo se tratase de una opción pues sería mucho hacer pero es claro que dec lo está pensando para más cosas.
Por otra parte, tanto puñetar empieza a mosquearme. No sé en España como sea la costumbre, pero llamarme puñetero tantas veces empieza a incomodarme. Confío en que sólo sea una diferencia de costumbres. // Saludos |
|
#3
|
||||
|
||||
|
Cita:
__________________
Saludos Emilio |
|
#4
|
||||
|
||||
|
Cita:
![]() Eso si, a ese código le falta la función resultados() que en ella debes hacer la consulta, pero bueno eso no es imprescindible, se sobreentiende.
__________________
Saludos Emilio |
|
#5
|
||||
|
||||
|
Hola,
Román, lo cierto es que el diccionario no hace esta vez una correcta descripción de la que es al menos una de las acepciones de las palabra puñetero. En mi tierra se dice cariñosamente, claro que vuelve a pasar lo mismo otra vez: dicho, o sea, de viva voz, suena de distinto modo, porque ahí está el quid, en el tono que se le dé a la palabra. Pasa con otras como cabrón, que no es necesariamente un insulto, puede incluso ser todo lo contrario. Pero, supongo que el lenguaje escrito no permite todas las posibilidades del lenguaje hablado. Permite otras, claro. ![]() Cita:
![]() Cita:
En realidad el resultado sería el mismo: lo único que cambiaría (que se me ocurra, y que además pretendemos y tratamos de seguir como norma) es que se dejaría la consulta SQL en la clase BDatos, junto al resto de consultas que se hacen, de manera que en caso de necesitar modificar la misma se sabría de antemano a dónde acudir. Al comenzar Loturak la clase BDatos era cierta clase que escribí (en realidad casi copié, pero, adrede, para tratar de comprender su funcionamiento) hace ya tiempo (con ayuda de no poca gente, Román, por ejemplo, colaboró en ello). Pero en Loturak contamos con una clase que extiende esta BDatos, y que es la que aporta métodos que, fundamentalmente, hacen consultas a la base de datos. Es por eso, por tenerlo ahí, a mano, como aquel que dice, y no una consulta aquí, otra allí, otra acullá, etc. Pero, creo que me enrrollo... joroba... ¡sí, me estoy enrrollando! Me gustaría encontrar un fragmento de cierto capítulo de Don Quijote de la Mancha en donde se explica porqué utilizar el término hijo de puta y llamárselo a alguien no tiene que ser un insulto... no recuerdo exactamente qué capítulo era, pero, como todos los del Quijote, es estupendo. Podría acaso buscarse por Internet, puesto que el Quijote está digitalizado y probablemente el término "hideputa" o "hijo de puta" no aparezca demasiado (eso creo recordar). En fin, lo dejo ya, que ya está bien, qué pesao. ![]() |
|
#6
|
||||
|
||||
|
Ta bueno pues.
En cuanto a la clase bdatos, desconozco yo el uso exacto que le das, pero visto así desde lejos y a juzgar por su nombre, a mi me da que tal como tienes tu clase Opciones está muy bien. Esto es, tienes una clase bdatos que- estoy suponiendo-centraliza el acceso a la base de datos, lo cual está muy bien, pero no hagas de esta clase un dios que hace todo. Otras clases de tu aplicación, como Opciones hacen uso de ella en lugar de dejarle todo el trabajo a una sólo clase. Vamos, en resumen, que a mi me parece bien tal como la tienes. // Saludos puñetero |
|
#7
|
||||
|
||||
|
Hola,
Capítulo XIII de la segunda parte del Quijote. Léase. Y, por cierto,... ha sido leer un poco del texto para acordarme de que sí, en el Quijote se utiliza "hijo de puta" en más de una ocasión y más de dos... ![]() Última edición por dec fecha: 05-09-2006 a las 02:10:10. |
|
#8
|
||||
|
||||
|
Hola,
Sí; de hecho dudo en añadir un método (y seguramente más de uno sería necesario) en la clase BDatos, puesto que la clase Opciones está ahora bastante clara y limpia, y tampco estorban ahí las consultas SQL. Empero, los métodos principales relacionados con la base de datos de la aplicación: realizar la conexión, la selección de la base de datos, ejecutar consultas de varias maneras... todo eso lo hace la clase BDatos,... que en realidad no se ha tocado en Loturak, es decir, que puede usarse en otra aplicación sin problemas (en principio) y de hecho yo la he utilizado en alguna otra aplicación o pruebas. Ahora, lo que existe en Loturak es una clase que extiende (que hereda) de la clase BDatos "principal". Es en esta clase hija en donde se acumulan métodos como "NumEnlacesPublicos", "NumEnlacesPrivados", "EnlaceUsuario", etc., etc., etc., que, básicamente, puede decirse que conforman las consultas SQL. No se ejecutan, sólo se conforman, porque de la ejecución de las consultas, entre otras cosas, se encarga la clase padre de esta. ¿Entonces cuál es la intención de extender la clase BDatos? Pues, básicamente (y es posible que de forma equivocada) se hace para tener en un solo lugar la conformación de consultas SQL. Esto no se consigue del todo, hay sitios en la aplicación en donde se hacen consultas SQL (siempre a través de la clase BDatos), pero, la gran mayoría (y como norma general) se hacen en la clase BDatos, no en "cualquier sitio". Ocurre un poco lo mismo con la clase Xhtml, que "encapsula" (es mucho decir) la salida del código XHTML de la apliación. En algunos sitios se genera código de salida, pero, prácticamente todo el código XHTML de salida está en la clase Xhtml, de manera que es algo más sencillo de "localizar", editar, etc. Al menos así lo estoy viendo yo de momento... porque está el problema del tamaño de los archivos... la clase BDatos no me preocupa, pero, la clase Xhtml, incluso luego de varios repasos, ocupa ya unos 130 KB. Sin embargo, no noto problemas en eso (de momento) y todavía es posible darle más de un repaso y más de dos... ![]() |
|
#9
|
||||
|
||||
|
Hola,
Cita:
Unos párrafos más adelante de lo que has referido Seaoane, viene a caer Sancho en la verdad de que hijo de puta no es siempre un término ofensivo:Cita:
![]() Última edición por dec fecha: 05-09-2006 a las 14:21:47. |
|
#10
|
||||
|
||||
|
Cita:
No sé, no sé. Sería bueno saber ![]() // Saludos |
|
#11
|
||||
|
||||
|
Hola,
Cita:
En primer lugar no se me escapa que ciertas páginas, digamos, más o menos estáticas, podrían prescindir de la clase Xhtml, o, fuera como fuera, no necesitarían de métodos en esta clase, sino que, simplemente, cada página incluiría su código XHTML correspondiente (además del "general", que sí añadiría, por ejemplo, las cabeceras de las páginas, o el pie de estas). Puede hacerse, se ha pensado y no se descarta. Peeeeeeeeeeeero... Lo cierto es que dudo que PHP carge los 130 KB del archivo de la clase Xhtml. Lo pongo en duda... ¡porque la carga de la página es bastante rápida, y, si tuviera que cargar los 130 de la clase Xhtml, los 30 de la clase BdatosEx, los 25 de la clase Login, los... tardaría mucho más de lo que tarda, fijo. Además nos hemos animado a echar para adelante (por lo menos hasta que no veamos que la cosa no escala, que no es posible seguir así) porque hemos visto clases en PHP de 300 KB... Pero, sobre todo, porque los hechos contradicen a los números. Ya lo he dicho, si se "carga todo" la página tendría que ocupar unos 250 KB (no quiero exagerar) y, sin embargo, Loturak carga bastante rápido, desde luego, no cargaría así si tuviera que cargar con 250 KB... y lo dice alguien que cuenta con una conexión vía módem de 56 kbs y que notaría esos KB de qué manera... ¿Entonces? Pues no sé... no llego a tanto... es lo que quería preguntar, ¿cómo se las ingenia PHP? No lo sé, pero, desde luego, se las ingenia. No sé. Debe haber algo parecido al caché de los navegadores, o a lo que hace Apache (que no sirve páginas si no han cambiado desde la última vez), me parece, o MySQL, que no actualiza un registro (aunque se lo digas) si esto es innecesario, porque los datos del mismo son iguales... o al compilador JIT (Just in time) de .NET, que compila el código la primera vez que es necesario, pero, luego ya no hace sino ejecutar el código previamente compilado... Mecanismos de optimización que van más allá de mi conocimiento, pero, que, deben existir, pues de lo contrario se vería enseguida, se notaría la diferencia y bastante además, ya digo. Pensad en que la clase Xhtml no va sola... que se apoya en otra clases (de algún modo) y antes de su declaración puede verse: Código PHP:
![]() Edito: Me doy cuenta ahora de que acaso he mezclado churras con merinas en parte de lo que he dicho, pero, no voy a buscarle las vueltas, porque, me parece que se entiende lo que más o menos quiero explicar. Ea. ¡Saludos! ![]() Última edición por dec fecha: 05-09-2006 a las 03:25:45. |
|
#12
|
||||
|
||||
|
Cita:
Cita:
|
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| ¿Cómo ver a los usuarios conectados desde mi aplicacion? | federiconqn21 | Conexión con bases de datos | 3 | 23-07-2006 01:56:09 |
| Problema al ejecutar un procedimiento dos usuarios distintos en aplicacion asp.net | mamen | .NET | 5 | 04-05-2006 14:58:23 |
| lanzo aplicación para que sea terminada por usuarios de internet | unreal4u | Varios | 0 | 25-11-2004 19:34:03 |
| Usuarios conectados en mi aplicacion ? | Jorge Taveras | MS SQL Server | 8 | 29-06-2004 22:18:41 |
| opciones para grabar un video | jfgonzalez | OOP | 2 | 11-08-2003 16:25:42 |
|