Ver Mensaje Individual
  #14 (permalink)  
Antiguo 04/09/2008, 15:34
Avatar de jahepi
jahepi
Colaborador
 
Fecha de Ingreso: diciembre-2004
Ubicación: Querétaro
Mensajes: 1.124
Antigüedad: 19 años, 5 meses
Puntos: 43
Respuesta: CLASS para sistema de biblioteca

Cita:
Iniciado por zubintro Ver Mensaje
Gracias jahepi por tu respuesta pero tengo algunas dudas, no se si puedas explicame un poco mejor tu post, por ejemplo obviamente necesito un interfaz de formulario para cargar los datos la cual estaria definida con los mismos valores de la clase libro donde pasaria las variables del formulario como
$atitulo=$_POST['titulo'] ..... $aautor=$_POST['autor']..... y asi sucesivamente con todos los valores del formulario para esto en la pagina del formulario deberia cargar con un include la clase libro, o me equivoco??

En este caso me dices que como primer paso definir el formulario con el codigo
Código PHP:
interface ISaver 
    function 
save(); 

y la verdad no entiendo como podria hacerlo.

En el caso de las otras dos clases que e sugieres, la cosa seria donde las invocas? seria en el mismo formulario?
Hola zubintro !

Perdón por haberte confundido, cuando hablo de 'interface' no me refiero a la interfaz de usuario.

Interface es un tipo abstracto donde se especifíca la interfaz pública (métodos públicos) de la clase que la implemente, si una clase implementa valga la reduncia una 'interface', debemos definir los comportamientos específicos de cada método público, en otras palabras la clase firma un contrato de implementación.

Ahorita mejor deja el uso de 'interfaces' para un estudio posterior y enfócate nada mas en definir una clase que tenga como responsabilidad el guardar los libros que se encuentran en la biblioteca.

En el punto de entrada de tu programa lo visualizo así:

Código PHP:
<?php 
include('check.php');
include(
'LibrarySaver.php'); //Incluimos la clase encargada de guardar los libros.

include 'classLibro.inc.php'//Cargamos libro por libro definiendo los argumentos declarados en la funcion classlibro
$libro1= new Libro('Introduccion a PHP5''David Sklar'4155); // Ejemplo de la carga de un registro
$libro2= new Libro('PHP Profesionales''Ashish'7208);
$libro3= new Libro('Estructura de Datos en Pascal''M. Tenenbaum'5603);
$libro4= new Libro('Programación en PASCAL''Byron S. Gottfried'3985);
$libro5= new Libro('PHP5 and MySQL Bible''Tim Converse'10832);

include 
'classBiblioteca.inc.php'//Invocamos la clase para ejecutar el array y almacenar los datos
$biblio = new Biblioteca;
$biblio->AdicionarLibro($libro1);// $libro1 previamente instanciado como en el código
$biblio->AdicionarLibro($libro2);
$biblio->AdicionarLibro($libro3);
$biblio->AdicionarLibro($libro4);
$biblio->AdicionarLibro($libro5);
$biblio->Mostrar(); //Esto llama la funcion que muestra lo almacenado en el arreglo Libro que se 

//Salvamos los libros.
$saver = new LibrarySaver($biblio);
$saver->save();
?>
Clase LibrarySaver.
Código PHP:
class LibrarySaver {
       
       private 
$biblioteca

       
public function __construct($biblioteca) {
             
$this->biblioteca $biblioteca;
       }       

       public function 
save() {
                
//Vemos que libros hay en la biblioteca.
                
$iterator $this->biblioteca->getIterator(); 
                while(
$iterator->hasNext()) {
                     
$libro $iterator->next();
                     
//Instrucciones para salvar cada Libro en un archivo de texto.
               

       }


Un saludote !
__________________
Una contraseña es como la ropa interior. No deberías dejarlas afuera a la vista de otras personas, deberías cambiarla regularmente, y ni se te ocurra prestarla a extraños.