CLASSE SQL

Signaler
Messages postés
41
Date d'inscription
mardi 3 octobre 2006
Statut
Membre
Dernière intervention
15 mars 2009
-
Messages postés
6
Date d'inscription
mercredi 8 février 2006
Statut
Membre
Dernière intervention
11 août 2008
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/50392-classe-sql

Messages postés
6
Date d'inscription
mercredi 8 février 2006
Statut
Membre
Dernière intervention
11 août 2008

Peut être ceci pourrait servir dans l'execute...

Magique les 6 premiers caractères d'une requête pour savoir combien au lieu de les compter.

switch (substr(strtolower($req),0,6)) {
case 'select':
//Combien ?
$ret["_Nb"]=mysql_num_rows($rq);
break;
case 'insert':
//Autoincrement ?
$ret["_Id"]=mysql_insert_id($rq);
case 'update':
case 'delete':
//Affected rows ?
$ret["_Nb"]=mysql_affected_rows($rq);
break;
default:
break;
}

Très bien ta source,
bonne continuation

Bravo Sneezy :)
Messages postés
15
Date d'inscription
jeudi 6 novembre 2008
Statut
Membre
Dernière intervention
16 novembre 2012

Bonjour Dorian91.

Loin de moi l'idée de lancer une polémique ici, mais comme l'a très bien expliqué Maître Akhénathon, l'abstraction de la base de données existe bel et bien.

Par ailleurs, comme je l'ai dit précédemment, PDO n'est malheureusement pas disponible chez tous les hébergeurs, même ceux qui proposent MySQL en standard dans leur offre, et certains (comme AMEN pour n'en citer qu'un pour l'exemple) ne savent pas le paramétrer correctement, ce qui rend son usage parfois impossible.

Utilisateur (entre autre) de ce fournisseur, j'ai été moi-même amené à écrire une classe pour mes propres besoins utilisée avec certains sites hébergés chez eux.

Enfin, je trouvais que votre post était vraiment "sec" pour ce nouveau contributeur, ce qui ne peut que l'encourager à ne plus partager ses codes, ce qui est à l'inverse de ce qui semble être le but de ce site.

A mon sens, et sans vouloir nullement vous offensé, je pense que si vous n'avez rien de plus positif à apporter dans un post de ce genre, y compris sous forme de critiques objectives, il est alors plus sympa de ne pas contribuer.

A mon avis, les utilisateurs des codes qui sont proposés sont suffisamment fins pour savoir s'il est intéressant ou non d'utiliser ce qui est proposé sans que l'on soit obligé de "tacler".

J'espère ne pas vous avoir choqué ni blessé par ma franchise car même si la référence à PDO était intéressante à faire, il me semble que cela pouvait être fait de manière plus sympatique.

Just my 2 cents.

Sneezy.
Messages postés
41
Date d'inscription
mardi 3 octobre 2006
Statut
Membre
Dernière intervention
15 mars 2009

Salut Sneezy

Je ne vois pas en quoi mon commentaire est a coté de la plaque.
Pour moi il n'y a pas de gain a utiliser cette source car elle n'apporte pas de fonctionnalités supplémentaires ou un meilleur confort d'utilisation.
J'ai cité PDO qui est quand même largement répandu chez les hébergeurs (très souvent il y a au moins le pilote pour mysql).
De plus il n'est pas plus difficile de se servir de PDO que de cette classe

$oDb = new myDB();
$oDb->Connect('localhost', 3306, 'root', '', 'test');
$oDb->Query('SELECT truc FROM machin;');
print_r($oDb->myResult);

$oPdo = new PDO('mysql:host=localhost;dbname=test', 'root', '');
$oStmt = $oPdo->query('SELECT truc FROM machin;');
print_r($oStmt->fetchAll());

Je ne vois vraiment pas en quoi c'est plus difficile.

A plus
Messages postés
15
Date d'inscription
jeudi 6 novembre 2008
Statut
Membre
Dernière intervention
16 novembre 2012

Au fait, au sujet des connexions permanentes ou non, c'est un choix difficile à prendre car en fait tout le monde ne bénéficie par d'une liaison internet à haut débit. En ce qui me concerne, n'ayant pas la possibilité d'avoir l'ADSL la où je réside, je suis contraint d'utiliser une clef 3G+ avec un débit très limié et des coupures très fréquentes. Une petite amérioration de ton code serait donc de pouvoir choisir par un paramètre passé à l'objet si l'on veut établir une connexion pemanente ou si l'on doit se reconnecter à chaque requête.
Afficher les 11 commentaires