J’ouvre ma section code avec une classe totalement inintéressante pour les vrais développeurs ici-bas, mais j’utilise souvent cette classe dans mes scripts, donc si vous voulez utiliser mes super scripts qui vont suivre, il vous faut cette classe.
Cette classe est sûrement d’autant plus inutile qu’elle fait sûrement doublon avec la classe mysql de php5, mais que voulez-vous, j’en suis toujours au 4…
Elle a quelques avantages intéressants :
- Affichage pratique et complet des erreurs
- Utilisation des Transactions de façon efficace (un point super de mysql, reservé aux tables innoDB)
- Utilisable avec une instance, ou pas
Exemple d’utilisation :
$SQL = new sqlQueries();
// un élément d'un coup
echo $SQL->query2cell("SELECT prenom FROM personnes WHERE id=$id LIMIT 1");
// tourner direct sur un résultat de requête
foreach($SQL->query2assoc("SELECT * FROM ptitetable") as $element) {
echo "$element[champ1]: $element[champ2] ($element[champ3])
";
}
// tout en une ligne !
echo "Ids: ".implode(", ", $SQL->query2list("SELECT id FROM table WHERE $conditions") );
// escaper proprement (vous avez bien sûr viré cette saloperie de magic quotes)
$nom = $SQL->e( $_REQUEST['nom'] );
// ne pas prendre de risques : si la première requête déconne, alors la seconde ne sera pas faite
// et je dirai même plus: et vice-versa
$SQL->tr_begin();
$SQL->query("UPDATE personne SET nom='$nom' WHERE id=$id");
$SQL->query("INSERT INTO actions (type, infos) VALUES('changenom', '$id -> $nom')");
$SQL->tr_end();
Je vous recommande de changer le constructeur à l'envie. Il m'est souvent arrivé de le virer complètement par exemple, parce que mysql_connect() serai fait ailleurs.
Vous pouvez télécharger le code de la version 0.95 ici :
sqlQueries Gzippé(chie : apache essait de l'exécuter)- sqlQueries Zippé
- voir sqlQueries en ligne

Laisser un commentaire