:hello:
Je me tente à utiliser des classes en php.
J’essais juste de faire un petit truc pour ajouter par exemple un utilisateur à une base. Mais j’ai de gros doute sur ma de coder :heink:
En effet, cela me parait beaucoup plus long et contraignant qu’une approche classique non POO.
Voici ce que j’ai fait (je ne met que deux variables pour alléger le code:
fichier compte.class.php
class compte
{
var $id;
var $login;
var $passwd;
// Constructeur: j'initialise l'ID
function compte()
{
$request = mysql_query('SELECT MAX(id) FROM comptes');
$result = mysql_fetch_array($request);
@$result[0]++;
$this->id = $result[0];
}
// Fonction d'ajout: première idée/méthode
function ajoutCompte($flogin, $fpasswd)
{
$this->login = $flogin;
$this->passwd = $fpasswd;
$ajout = mysql_query('INSERT INTO user (login, passwd) VALUES ("'.$this->login.'", "'.$this->passwd.'"');
}
// Fonction d'ajout: seconde idée/méthode
function ajoutCompte2()
{
$ajout = mysql_query('INSERT INTO user (login, passwd) VALUES ("'.$this->login.'", "'.$this->passwd.'"');
}
}
Comme vous pouvez le constater, je prépare deux fonctions (deux méthodes) pour insérer les données.
Ce qui se traduit comme ceci dans ma page “normale” (celle qui récupère les données) :
//récup login et passwd
$login = $_POST['login'];
$passwd = $_POST['passwd'];
include "compte.class.php";
$user = new compte;
// utilisation de la méthode 1:
$user->ajoutCompte($login,$passwd);
// ou bien seconde méthode :
$user->login = $login;
$user->passwd = $passwd;
$user->ajoutCompte2();
Quelle serait selon vous la meilleure méthode à utiliser ?
(gloups… peut-être même que je fais n’importe quoi et que ça ne fonctionne pas du tout comme ça :neutre: )
Edité le 21/02/2008 à 14:31