Site multilingue, regrouper plusieurs requêtes en une seule
Posté : 05 déc. 2006, 08:34
Bonjour,
Je travaille sur un site qui pourrait devenir mulitlingue.
Dans ma page html, j'appelle le texte en utilisant la syntaxe suivante, par exemple pour afficher le titre :
La structure de ma table "texte" est la suivante :
Sachant que la page compte une quarantaine de champs, ne serait-il pas plus opportun (et plus rapide !) d'essayer de récupérer les champs de ma table en une seule requête ?
Oui, mais... comment faire ?
J'ai essayé de travailler avec mysql_fetch_assoc et mysql_fetch_array avec une syntaxe comme
Or, je souhaiterai pouvoir récupérer le couple section/texte distinctement pour utiliser une syntaxe comme
J'espère ne pas avoir été confus.
Merci de votre aide.
Cordialement,
I.
Je travaille sur un site qui pourrait devenir mulitlingue.
Dans ma page html, j'appelle le texte en utilisant la syntaxe suivante, par exemple pour afficher le titre :
$txt = "SELECT français FROM texte WHERE section='titre'";
$reqtxt = mysql_query($txt);
$restxt = mysql_fetch_assoc($reqtxt);
$affichage = $restxt[$langue];
print $affichage;
où section désigne l'emplacement (ou la "cible", si vous préférez) dans la page.La structure de ma table "texte" est la suivante :
Code : Tout sélectionner
CREATE TABLE 'texte' (
'identifiant' tinyint(4) NOT NULL auto_increment,
'page' varchar(25) NOT NULL,
'section' varchar(25) NOT NULL,
'français' mediumtext NOT NULL,
'anglais' mediumtext NOT NULL,
PRIMARY KEY (`identifiant`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=29 ;
Oui, mais... comment faire ?
J'ai essayé de travailler avec mysql_fetch_assoc et mysql_fetch_array avec une syntaxe comme
$txt = "SELECT section,français FROM texte WHERE page='index'";
$reqtxt = mysql_query($txt);
while ($row = mysql_fetch_assoc($reqtxt)) {
echo $row["section"];
echo $row["français"];
}
mais les champs s'affichent les uns derrières les autres, quelle que soit la fonction.Or, je souhaiterai pouvoir récupérer le couple section/texte distinctement pour utiliser une syntaxe comme
$titre = ma "sous-requête" Sql_a
print $titre;
$adresse = ma "sous_requête" Sql_b
print $adresse
Il me semble que ce genre de requête doit utiliser un tableau associatif, mais cette notion ne m'est pas familière. J'ai essayé aussi avec mysql_dataseek, sans résultat intéressant.J'espère ne pas avoir été confus.
Merci de votre aide.
Cordialement,
I.