question d'optimisation php/MySQL

Petit nouveau ! | 5 Messages

16 juin 2013, 00:23

Salut à tous!!

Du haut de mes quelques heures de vol en php, j'essai de créer un petit module de comptes personnels en local via wamp et sa base de données. J'essaie de coder tout ça de manière à être le plus "générique" possible, c'est à dire un code utilisable par n'importe qui ensuite...
Je cherche aussi à faire le code le plus épuré possible, et je me demande simplement si les lignes ci-dessous peuvent être condensées en 1 seule commande ?

extrait de "functions.php" :
function suppChequier($dbname;$p_num;$date)
{
	DBconnect($dbname); /*cette fonction, définie plus haut dans le fichier, se connecte à un base de données, ne revoie rien si c'est bon, un message d'erreur le cas échéant*/
	$req=$dbname->prepare ('DELETE FROM chequiers WHERE date= :date and p_num= :p_num');
	$req->execute(array(
		'date' => $date,
		'p_num' => $p_num
		));
	$req=$dbname->prepare ('DELETE FROM cheques WHERE date= :date and p_num= :p_num');
	$req->execute(array(
		'date' => $date,
		'p_num' => $p_num
		));
}
ce code consiste en la suppression d'un chequier (listé dans une table "chequiers") et des chèques associés (listés dans une table "cheques")

Merci de votre aide :)

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

16 juin 2013, 16:37

Salut

Avec le jeux des clefs étrangères tu peux éviter la seconde requête.

Pour cela il te fait définir la fk de chéquier vers chèques avec un on delete cascade.

Plus d'infos la http://sqlpro.developpez.com/cours/sqla ... rtie2#L7.3


@+
Il en faut peu pour être heureux ......

Eléphant du PHP | 96 Messages

16 juin 2013, 18:17