c'est avec joie que j'ai parcouru ce forum, et c'est avec la même joie que je poste mon premier sujet !
Je suis en train de créer une page d'administration pouvant gérer le statut online/offline des différentes pages de mon site.
Mon site sera en 5 langues.
J'ai choisi de stocker les informations de chaque langue dans des tables séparées : info_fr, info_en, info_de, info_nl et info_it.
Dans chaque table, j'ai stocké le nom de mes pages, et leurs états respectifs (1=online ou 0=offline).
CITATION
par exemple, pour ma table info_fr du type page ---> etat :
page1 ---> 1
page2 ---> 0
page3 ---> 1
etc...
page1 ---> 1
page2 ---> 0
page3 ---> 1
etc...
J'ai donc créé une fonction qui importe les états des pages, qui affiche les résultats, et coche un radio, en fonction de ce qu'il a trouvé.
Vous comprendrez mieux avec l'image suivante :
Voici ma fonction :
CODE
function etatpages($lang)
{
$req = "SELECT page, etat FROM info_".$lang;
$result = mysql_query($req) or die ("impossible d'importer l'état des pages de la table info_$lang");
$i=0;
while($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
$display = $row[etat];
if ($i == 0)
{
$page = "PAGE 1";
$name = "page1".$lang;
}
elseif ($i == 1)
{
$page = "PAGE2";
$name = "page2".$lang;
}
elseif ($i == 2)
{
$page = "PAGE3";
$name = "page3".$lang;
}
?>
<b><? echo $page; ?> : </B><INPUT TYPE="radio" NAME="<? echo $name; ?>" value="0"<? if ($display == 0) echo " CHECKED"; ?>><FONT STYLE="color:red">hors-ligne</FONT>
<INPUT TYPE="radio" NAME="<? echo $name; ?>" VALUE="1"<? if ($display == 1) echo " CHECKED"; ?>><FONT STYLE="color:green">en-ligne</FONT><BR>
<?
$i++;
};
mysql_close();
return;
}
{
$req = "SELECT page, etat FROM info_".$lang;
$result = mysql_query($req) or die ("impossible d'importer l'état des pages de la table info_$lang");
$i=0;
while($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
$display = $row[etat];
if ($i == 0)
{
$page = "PAGE 1";
$name = "page1".$lang;
}
elseif ($i == 1)
{
$page = "PAGE2";
$name = "page2".$lang;
}
elseif ($i == 2)
{
$page = "PAGE3";
$name = "page3".$lang;
}
?>
<b><? echo $page; ?> : </B><INPUT TYPE="radio" NAME="<? echo $name; ?>" value="0"<? if ($display == 0) echo " CHECKED"; ?>><FONT STYLE="color:red">hors-ligne</FONT>
<INPUT TYPE="radio" NAME="<? echo $name; ?>" VALUE="1"<? if ($display == 1) echo " CHECKED"; ?>><FONT STYLE="color:green">en-ligne</FONT><BR>
<?
$i++;
};
mysql_close();
return;
}
Finalement, quand j'appelle
CODE
etatpages(fr);
J'obtiens bien ce que je souhaite.Le problème vient lorsque j'appelle ceci :
CODE
etatpages(fr);
echo '<BR>';
etatpages(en);
echo '<BR>';
etatpages(de);
echo '<BR>';
etatpages(nl);
echo '<BR>';
etatpages(it;
echo '<BR>';
etatpages(en);
echo '<BR>';
etatpages(de);
echo '<BR>';
etatpages(nl);
echo '<BR>';
etatpages(it;
La première focntion s'affiche correctement, et puis j'obtiens l'erreur suivante :
CITATION
Warning: mysql_query() [function.mysql-query]: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) in /home.8/*******/www/administration.php on line 8
Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /home.8/*****/www/administration.php on line 8
impossible d'importer l'état des pages de la table info_en
Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /home.8/*****/www/administration.php on line 8
impossible d'importer l'état des pages de la table info_en
Quelqu'un a-t-il la solution à mon problème ????
Un grand merci d'avance
