Foros del Web » Programando para Internet » PHP »

Recomendación desarrollo en php

Estas en el tema de Recomendación desarrollo en php en el foro de PHP en Foros del Web. Saludos... Me estoy iniciando en el desarrollo con php. Después de pequeñas pruebas y desarrollos, me he metido con un proyecto en "condiciones", que además ...
  #1 (permalink)  
Antiguo 01/08/2011, 02:03
 
Fecha de Ingreso: agosto-2003
Mensajes: 324
Antigüedad: 20 años, 8 meses
Puntos: 1
Recomendación desarrollo en php

Saludos...
Me estoy iniciando en el desarrollo con php.
Después de pequeñas pruebas y desarrollos, me he metido con un proyecto en "condiciones", que además creo que como meor se aprende, ya que sobre todo es más motivante, aunque me tope con más "paredes"...

Bien, la duda que planteo es la siguiente.

Como tengo que insertar, actualizar, consultar, eliminar registros de bds, veo que hay distintas formas..
- páginas php independientes que lo hagan y luego te redirijan...
- páginas con funciones a las que llamo...
- hacer includes ...
- etc

¿Cómo veis la mejor forma de organizar esos proyectos "mas grandes"?

Gracias
  #2 (permalink)  
Antiguo 01/08/2011, 02:38
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 1 mes
Puntos: 253
Respuesta: Recomendación desarrollo en php

Buenas,

La verdad es que es buena pregunta la que planteas, pero como tal no vas a encontrar una única respuesta.

Mi consejo va dirigido a que sigas trabajando con el tema en cuestión. Si piensas avanzar en PHP y crear varios proyectos, lo mejor que puedes hacer, a mi parecer, es generalizarlo todo lo máximo posible, así podrás usar el código prácticamente íntegro para proyectos futuros y, seguramente, se te plantearán más problemas, luego aprenderás más.

Yo tengo montada una clase para tratar todo el tema de bases de datos, así, el tratamiento con la base de datos es completamente transparente para la aplicación, siempre lo hago igual y todo son llamadas a funciones. Básicamente la clase tiene:
- Atributos para almacenar los datos de la base de datos (nombre, host, usuario, contraseña...).
- Constructor e iniciador de atributos, aquí tengo dos modalidades, unas veces lo paso en un ficherito php que llama a las funciones y otras lo leo del típico fichero properties.
- Funciones de tratamiento de base de datos: las típicas; Connect, Disconnect, Select, Insert, Update y Delete.
- Funciones de login: al final, casi todas las aplicaciones tienen cierto control sobre los usuarios, así que lo incluyo en esta clase. Tengo funciones de Login, Logout y CheckLogin.
- Atributo $message y métodos para tratamiento de mensajes: esto es un añadido que creo que usa mucha gente de diferentes formas, yo lo añado también aquí. Es una forma de tener controlados desde la clase los diferentes mensajes de error que puede arrojar la base de datos. Básicamente tengo cuatro métodos: SetMessage, ConcatMessage, GetMessage y PrintMessage. Cuando tengo error con set y concat monto el mensaje final que se mostrará al usuario y mediante get o print lo imprimo en una página propia de error. Así controlas mucho más este tipo de mensajes y te ahorras el páginazo blanco de error en la base de datos, que suena a descontrol. Si muestras una página propia de error con el mismo formato que el resto de la aplicación ya parece otra cosa, es un error igual, pero está mucho más controlado. Además, también puedes usar estos métodos para tratar errores propios, como por ejemplo, búsquedas que no devuelven registros y demás casos.

Y esta es mi clase para base de datos, intento no ensuciarla con métodos que no tengan que ver con lo que te he comentado. Todos los demás métodos que uso, los muevo a otras clases. Tengo una para validación de formularios y otra para todos aquellos métodos propios de la aplicación que estoy desarrollando en ese momento. Con esas tres clases (DDBB, Forms y Application) tendrás las cosas bastante ordenadas.

Puede parecer un poco complejo empezar así desde el principio, pero te aseguro que si te acabas dedicando a esto, acabarás tirando a eso. Separar las cosas y generalizarlas para poder reutilizar el código en varias aplicaciones.

Espero que te sirvan los consejillos, un saludo.
__________________
¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?
  #3 (permalink)  
Antiguo 01/08/2011, 02:41
 
Fecha de Ingreso: agosto-2003
Mensajes: 324
Antigüedad: 20 años, 8 meses
Puntos: 1
Respuesta: Recomendación desarrollo en php

Muchísmas gracias.. como dices.. cada maestrillo tiene.... jje Pero sin duda, una gran ayuda.
  #4 (permalink)  
Antiguo 01/08/2011, 03:15
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 1 mes
Puntos: 253
Respuesta: Recomendación desarrollo en php

Si aún no te atreves con las clases PHP, puedes hacer lo mismo que te he dicho con ficheros externos PHP sin que sean clases y haciendo los include o require, pero si te soy sincero, es mucho mejor que empices desde el principio con clases, te dan más libertad y más opciones a la hora de programar.

Un saludo y me agrada que te valga lo que te puse.
__________________
¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?
  #5 (permalink)  
Antiguo 01/08/2011, 03:16
 
Fecha de Ingreso: agosto-2003
Mensajes: 324
Antigüedad: 20 años, 8 meses
Puntos: 1
Respuesta: Recomendación desarrollo en php

De nada..
¿Me recomiendas algún framwork donde la curva de aprendizaje sea rápida?
O no es necesario...
gracias de nuevo
  #6 (permalink)  
Antiguo 01/08/2011, 03:23
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 1 mes
Puntos: 253
Respuesta: Recomendación desarrollo en php

Yo me pasé a PHP desde ASP (que es lo que aprendí en la carrera) y más o menos he seguido un método de aprendizaje basado en darme tortas contra un muro. Ya me costó mi trabajo adaptar el código que tenía al uso de clases, aunque el concepto lo tenía bien claro de Java. A base de darte tortazos empiezas a hacer las cosas mejor, pero he de reconocer que yo no lo hice desde el principio.

Framework, supongo que otros del foro podrán darte mejores ideas, yo no tengo ni papa de eso. Nunca he usado los que hay, pero por ahí encontrarás páginas y páginas comparándolos entre sí, creo que yo soy más clásico en ese sentido.

Un saludete.
__________________
¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?
  #7 (permalink)  
Antiguo 01/08/2011, 04:24
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: Recomendación desarrollo en php

AJDC yo tampoco suelo usar framework (almenos, ninguno que esté en el mercado, como vgonga1986, yo tengo mis propio "nucleo" de proyecto (conexion a bbdd, sistema de login, un GRID de tablas configurable para cada una (borrar / editar / añadir registros)), pero, si empezara con alguno creo q sería Symfony2 (salió la estable hace un par de semanas) que tiene muy buena pinta :)
  #8 (permalink)  
Antiguo 01/08/2011, 04:29
 
Fecha de Ingreso: agosto-2003
Mensajes: 324
Antigüedad: 20 años, 8 meses
Puntos: 1
Respuesta: Recomendación desarrollo en php

Muchas gracias Eleazan
  #9 (permalink)  
Antiguo 01/08/2011, 05:05
Avatar de juanito1712  
Fecha de Ingreso: mayo-2010
Ubicación: Valencia
Mensajes: 1.124
Antigüedad: 13 años, 11 meses
Puntos: 66
Respuesta: Recomendación desarrollo en php

una cosita, si no es mucho gorronear...

llevo tiempo tratando de meterme en las clases php para comunicar con bases de datos.

pero no me imagino muy bien como poder hacer una clase reutilizable, en todos los proyectos lo intento y en todos los proyectos termino llamando a un php con todas las consultas sql hechas adrede para ese programa y seleccionando la que necesito en ese momento con un switch.

No consigo imaginarme una clase "generica" que pueda adaptar facilmente segun la consulta que pretenda realizar.

Podéis mostrar algún ejemplo o decir donde se encuentra alguno?
  #10 (permalink)  
Antiguo 01/08/2011, 05:14
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: Recomendación desarrollo en php

Las consultas no deben de ir en la clase O.O

Simplemente, ten un método "query" (o "q" xD), q puedas llamarlo, por ejemplo, así
Código PHP:
$db -> ($tabla$array_campos_que_quiero); 
O a gusto del consumidor :)
  #11 (permalink)  
Antiguo 01/08/2011, 05:20
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 1 mes
Puntos: 253
Respuesta: Recomendación desarrollo en php

Yo, en mi nucleo de clases, lo que tengo es una función para Select, otra para Update, Delete y demás. Y la query se la paso como parámetro. La query siempre hay que montarla fuera de la clase, en el script de la página, hacer una clase genérica con la construcción de la query en la propia clase sería rizar el rizo. Ojo, no digo que no se pueda hacer, pero es complicarse la vida en valde.

Un saludo.
__________________
¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?
  #12 (permalink)  
Antiguo 01/08/2011, 05:51
Avatar de juanito1712  
Fecha de Ingreso: mayo-2010
Ubicación: Valencia
Mensajes: 1.124
Antigüedad: 13 años, 11 meses
Puntos: 66
Respuesta: Recomendación desarrollo en php

ya decia yo que algo no estaba enfocando bien, todo era darle vueltas y no le encontraba la "reusabilidad" por ningun lado


muchisimas gracias a los dos

Etiquetas: desarrollo, registro
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 20:23.