Page 1 sur 1
ressortir le nom de la table sql
Posté : 10 oct. 2006, 13:39
par mcorgnet
Bonjour,
J'ai une requête dans une variable :
$requete="insert into MATABLE ...";
je cherche une regexp qui me permettrait de retourner le nom de ma table via une méthode.
Vous avez ça ?
Merci,
M.
Posté : 10 oct. 2006, 14:20
par goeb
salut,
essaye ceci :
$requete="insert into MATABLE ...";
$nom_table = preg_replace('/insert into (\w+) .*/i', '\\1', $requete);
Posté : 10 oct. 2006, 14:39
par mcorgnet
Merci de ta réponse.
J'ai oublié de préciser que la requête pouvait être de type insertion, suppression, ou mise à jour ...
ça complique le truc non ?
Posté : 10 oct. 2006, 18:12
par Cyrano
pas vraiment : il faut déterminer ce que tu vas toujours trouver AVANT et toujours trouver APRÈS :
- Avant : INSERT INTO ou DELETE FROM ou UPDATE;
- Après : (`champ1`, `champ2`, .., `champn`) VALUES (..) ou VALUES (...) ou SET champx = ... ou WHERE
il va de soi qu'on réduira au minimum et que toutes les paires ne sont pas possibles, mais ça te permet de définir le masque de ce qui précède et de ce qui succède au(x) nom(s) de(s) table(s)