Renseignement requête sql
zatox
Messages postés
640
Date d'inscription
Statut
Membre
Dernière intervention
-
zatox Messages postés 640 Date d'inscription Statut Membre Dernière intervention -
zatox Messages postés 640 Date d'inscription Statut Membre Dernière intervention -
Bonjour, je me suis trompé j'ai d'abord posté dans webmasterring mais je crois que c'est plutot ici que je dois poster, voici mon problème:
sur le site http://www.plongee-sous-glace.fr/ j'utilise une base sql qui contient 10 tables pour chaque langue. Toutes les tables ont strictement la même structure. Je voudrais savoir s'il est possible de passer dans les ordres sql le nom de la table accédée en paramètre de telle façon que je puisse écrire un seul ordre qui serait appelé par un include chaque fois que j'en ai besoin, le nom de la table serait passé en paramètre, ceci afin de n'avoir pour un seul ordre qu'une seule modif à faire dans le cas d'évolution des tables ? En effet, actuellement, quand je dois faire évoluer mes tables (rajout d'une colonne par exemple, pour un ordre je dois faire 10 modifs. Exemple:
$retour = mysql_query('SELECT chapitre, contenu, groupe, nom_g, position, nom_p, http, videoweb, videoflv, diaporama, nbespace, nbsautligne FROM news_piauplongee_fr ORDER BY groupe DESC, position ASC LIMIT 0, 100');
$retour = mysql_query('SELECT chapitre, contenu, groupe, nom_g, position, nom_p, http, videoweb, videoflv, diaporama, nbespace, nbsautligne FROM centre_piauplongee_fr ORDER BY groupe DESC, position ASC LIMIT 0, 100');
Ces 2 ordres sont identiques, il n'y a que le nom de la table qui change, avec une variable comme nom de table, je n'aurait besoin que d'un seul ordre précédé de l'alimentation de la table à laquelle je veux accéder.
Merci pour vos réponses
sur le site http://www.plongee-sous-glace.fr/ j'utilise une base sql qui contient 10 tables pour chaque langue. Toutes les tables ont strictement la même structure. Je voudrais savoir s'il est possible de passer dans les ordres sql le nom de la table accédée en paramètre de telle façon que je puisse écrire un seul ordre qui serait appelé par un include chaque fois que j'en ai besoin, le nom de la table serait passé en paramètre, ceci afin de n'avoir pour un seul ordre qu'une seule modif à faire dans le cas d'évolution des tables ? En effet, actuellement, quand je dois faire évoluer mes tables (rajout d'une colonne par exemple, pour un ordre je dois faire 10 modifs. Exemple:
$retour = mysql_query('SELECT chapitre, contenu, groupe, nom_g, position, nom_p, http, videoweb, videoflv, diaporama, nbespace, nbsautligne FROM news_piauplongee_fr ORDER BY groupe DESC, position ASC LIMIT 0, 100');
$retour = mysql_query('SELECT chapitre, contenu, groupe, nom_g, position, nom_p, http, videoweb, videoflv, diaporama, nbespace, nbsautligne FROM centre_piauplongee_fr ORDER BY groupe DESC, position ASC LIMIT 0, 100');
Ces 2 ordres sont identiques, il n'y a que le nom de la table qui change, avec une variable comme nom de table, je n'aurait besoin que d'un seul ordre précédé de l'alimentation de la table à laquelle je veux accéder.
Merci pour vos réponses
A voir également:
- Renseignement requête sql
- Logiciel sql - Télécharger - Bases de données
- Sql lister les tables ✓ - Forum Programmation
- Requête bloquée par le pare-feu applicatif claranet webfence ✓ - Forum Réseaux sociaux
- Jointure sql ✓ - Forum MySQL
- Erreur lors de l'envoi de la requête facebook - Forum Facebook
8 réponses
Essaie avec :
J'ai un doute sur la syntaxe mais il me semble que ce soit ca !
"SELECT champ1, champ2 FROM ".{$maTable}
J'ai un doute sur la syntaxe mais il me semble que ce soit ca !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonsoir, ben non ça marche pas non plus, je sais pas si je vais y arriver !!!! merci pour ton aide si quelqu'un a une idée ?
Salut
essaie donc
$matable = "news_piauplongee_fr";
ou
$matable = "centre_piauplongee_fr";
puis
$retour = mysql_query("SELECT chapitre, contenu, groupe, nom_g, position, nom_p, http, videoweb, videoflv, diaporama, nbespace, nbsautligne FROM $matable ORDER BY groupe DESC, position ASC LIMIT 0, 100");
nb: tes apostrophes ont été remplacées par des guillemets pour pouvoir évaluer $matable
essaie donc
$matable = "news_piauplongee_fr";
ou
$matable = "centre_piauplongee_fr";
puis
$retour = mysql_query("SELECT chapitre, contenu, groupe, nom_g, position, nom_p, http, videoweb, videoflv, diaporama, nbespace, nbsautligne FROM $matable ORDER BY groupe DESC, position ASC LIMIT 0, 100");
nb: tes apostrophes ont été remplacées par des guillemets pour pouvoir évaluer $matable