J'en fais trop et je suis perdu

Mammouth du PHP | 1029 Messages

28 sept. 2006, 15:50

Bonjour,

Je construit une application basé sur des leçons de dicrimination auditive.

J'essaye de séparer la code en 3 tiers soit UI,BU,DA

dans DA j'ai la classe suivante
class GestionDevinette {
	
	... (private,getter et setter)..


	function Select(){


		$opensqlite = sqlite_open('../sqlite/basedb.sqlite');
		$sql = sqlite_query('SELECT * FROM motsphrase ORDER BY idmots ASC',$opensqlite);

		while ($result = sqlite_fetch_array($sql)) {

			$id[] = $result['idmots'];
			$motphrasedebut[] = $result['motphrasedebut'];
			$reponse[] = $result['motreponse'];
			$motphrasefin[] = $result['motphrasefin'];


		}
		
		$this->set_id($id);
		$this->set_motphrasedebut($motphrasedebut);
		$this->set_reponse($reponse);
		$this->set_phrasefin($motphrasefin);
		sqlite_close($opensqlite);
	}
	
	function MiseJour($motphrasedebut,$reponse,$motphrasefin,$id){
		
		$opensqlite = sqlite_open('../sqlite/basedb.sqlite');
		
		$result = sqlite_query("UPDATE motsphrase SET motphrasedebut = '$motphrasedebut' motreponse = '
								$reponse' motphrasefin  = '$motphrasefin' WHERE idmots = $id " ,$opensqlite);
		sqlite_close($opensqlite);
												
		
	}

}

Dans BU j'ai la claqqe suivante
<?php
class ModifDevinette {

	function __construct() {
		
		$objet = new GestionDevinette();
		$objet->Select();
		$id = $objet->get_id();
		$objetphrasedebut = $objet->get_motphrasedebut();
		$reponse = $objet->get_reponse();
		$objetphrasefin = $objet->get_phrasefin();
		
		foreach ($id as $k => $v) {
			?>
		<form action="<?php $this->Update(); ?>" method="POST">
		<table>
		<tr>
			<td>
				<input name="id" type="hidden" value="<?php echo $id[$k] ?>"><?php echo $id[$k] ?> 
			</td>
			<td>
				<input name="phrasedebut" type="text" value="<?php echo("$objetphrasedebut[$k]"); ?>">
			</td>
			<td>
				<input name="reponse" type="text" value="<?php echo("$reponse[$k]"); ?>">
			</td>
			<td>
				<input name="phrasefin" type="text" value="<?php echo("$objetphrasefin[$k]"); ?>">
			</td>
			<td>
				<input name="bouton" type="submit" value="Modifier"> 
			</td>
		</tr>
		<hr />
		</table>
		</form>
			
		<?php	
			
		}
		
	}
	
	function Update (){
		
		$objet = new GestionDevinette();
		$objet->MiseJour($_POST['phrasedebut'],$_POST['reponse'],$_POST['phrasefin'],$_POST['id']);
		
		
	}
}




et dans UI

$mot = new ModifDevinette();
Mon problème est dans le <form>, comment faire pour appeler une méthode de classe.

Ou alors je m'y prend vraiment comme un manche et je me complique la vie.

Merci de votre aide.

MaitrePylos
L'expérience est la somme de toutes nos erreurs.