par
cfiles » 27 nov. 2005, 14:47
Bon'jour'no tutti !!
Je rencontre un problème qui (encore une fois) va avoir l'air super con, autant vous prévenir tout de suite...
<?php
$titlepage = "admin";
include "../includes/phpptopadmin.php";
include "../admin/phpfonctions.php";
$page = isset ($_GET['page']) ? $_GET['page'] : '';
$list = '» Pour créer '.$nouveau.'.<br><br>';
$list .= '<table width="100%" cellspacing="0" cellpadding="0" border="0" style="border-top: 1px #000000 solid; padding: 3px;">';
$list .= '<tr class="trnewsadmin"><td class="tdgauche">ID</td><td class="tddroite">TITRE</td><td class="tddroite">AUTEUR</td>';
$list .= '<td class="tddroite">DATE</td><td colspan="3" class="tddroite">ACTIONS</td></tr>';
$result = mysql_query("SELECT * FROM ".$tableconc."_cfiles ORDER BY id".$extension." DESC", $connexion);
$nbresult = mysql_num_rows($result);
if ($nbresult=="0") { $list .= '<tr><td colspan="7"><i>Problème de connection à la bdd...</i></td></tr>'; }
else {
$i=0;
while ($i!=$nbresult)
{
$idext = mysql_result($result,$i,"id".$extension."");
$datext = mysql_result($result,$i,"date".$extension."");
$jour=substr($datext,8,2);
$mois=substr($datext,5,2);
$annee=substr($datext,0,4);
$titrext = stripslashes(trim(mysql_result($result,$i,"titre".$extension."")));
$auteurext = stripslashes(trim(mysql_result($result,$i,"auteur".$extension."")));
if ($i/2 != ceil($i/2)) { $list .= '<tr class="trbg2">'; }
else { $list .= '<tr class="trbg1">'; }
$list .= '<td class="tdgauche">'.$idext.'</td>';
$list .= '<td class="tddroite">'.$titrext.'</td>';
$list .= '<td class="tddroite">'.$auteurext.'</td>';
$list .= '<td class="tddroite">'.$jour.'/'.$mois.'/'.$annee.'</td>';
$list .= '<td valign="middle" class="tddroite">[ <a href="'.$lire.'?id='.$idext.'">lire</a> ]</td>';
$list .= '<td valign="middle" class="tddroite">[ <a href="../admin/newsmodif.php?id='.$idext.'">modifier</a> ]</td>';
$list .= '<td valign="middle" class="tddroite">[ <a href="Javascript:Supprimer('.$idext.')">supprimer</a> ]</td></tr>';
$i++;
}
}
$list .= '</table>';
switch ($page) {
case 'wcproc' :
$nouveau = "une nouveau process, <a href=\"#\">cliquez ici</a>";
$extension = "proc";
$tableconc = "wc_process";
echo $list;
break;
case 'news' :
$nouveau = "une nouvelle news, <a href=\"#\">cliquez ici</a>";
$extension = "news";
$tableconc = "news";
echo $list;
break;
default:
echo "Opération non conforme non identifiée";
}
mysql_free_result($result);
include "../includes/phppbottom.php";
?>
Mon problème est le suivant : je ne veux pas mettre le code de $list dans une autre page et faire un include à la place de echo $list; mais de cette façon, ça fonctionne très bien... J'aimerais juste comprendre où je dois écrire le code de $list sans avoir à le mettre deux fois dans chaque 'case' de switch()...
Je comprends tout à fait qu'en mettant $list au dessus de switch(), il n'ait pas toutes les informations pour procéder, mais je ne vois pas où je peux le mettre (hormi sur une autre page.. je sais, je suis chiante...

) sans avoir à le dupliquer.
Merci de vos lumière et bon week-end...
Caro.
Bon'jour'no tutti !!
Je rencontre un problème qui (encore une fois) va avoir l'air super con, autant vous prévenir tout de suite...
[php]<?php
$titlepage = "admin";
include "../includes/phpptopadmin.php";
include "../admin/phpfonctions.php";
$page = isset ($_GET['page']) ? $_GET['page'] : '';
$list = '» Pour créer '.$nouveau.'.<br><br>';
$list .= '<table width="100%" cellspacing="0" cellpadding="0" border="0" style="border-top: 1px #000000 solid; padding: 3px;">';
$list .= '<tr class="trnewsadmin"><td class="tdgauche">ID</td><td class="tddroite">TITRE</td><td class="tddroite">AUTEUR</td>';
$list .= '<td class="tddroite">DATE</td><td colspan="3" class="tddroite">ACTIONS</td></tr>';
$result = mysql_query("SELECT * FROM ".$tableconc."_cfiles ORDER BY id".$extension." DESC", $connexion);
$nbresult = mysql_num_rows($result);
if ($nbresult=="0") { $list .= '<tr><td colspan="7"><i>Problème de connection à la bdd...</i></td></tr>'; }
else {
$i=0;
while ($i!=$nbresult)
{
$idext = mysql_result($result,$i,"id".$extension."");
$datext = mysql_result($result,$i,"date".$extension."");
$jour=substr($datext,8,2);
$mois=substr($datext,5,2);
$annee=substr($datext,0,4);
$titrext = stripslashes(trim(mysql_result($result,$i,"titre".$extension."")));
$auteurext = stripslashes(trim(mysql_result($result,$i,"auteur".$extension."")));
if ($i/2 != ceil($i/2)) { $list .= '<tr class="trbg2">'; }
else { $list .= '<tr class="trbg1">'; }
$list .= '<td class="tdgauche">'.$idext.'</td>';
$list .= '<td class="tddroite">'.$titrext.'</td>';
$list .= '<td class="tddroite">'.$auteurext.'</td>';
$list .= '<td class="tddroite">'.$jour.'/'.$mois.'/'.$annee.'</td>';
$list .= '<td valign="middle" class="tddroite">[ <a href="'.$lire.'?id='.$idext.'">lire</a> ]</td>';
$list .= '<td valign="middle" class="tddroite">[ <a href="../admin/newsmodif.php?id='.$idext.'">modifier</a> ]</td>';
$list .= '<td valign="middle" class="tddroite">[ <a href="Javascript:Supprimer('.$idext.')">supprimer</a> ]</td></tr>';
$i++;
}
}
$list .= '</table>';
switch ($page) {
case 'wcproc' :
$nouveau = "une nouveau process, <a href=\"#\">cliquez ici</a>";
$extension = "proc";
$tableconc = "wc_process";
echo $list;
break;
case 'news' :
$nouveau = "une nouvelle news, <a href=\"#\">cliquez ici</a>";
$extension = "news";
$tableconc = "news";
echo $list;
break;
default:
echo "Opération non conforme non identifiée";
}
mysql_free_result($result);
include "../includes/phppbottom.php";
?>[/php]
Mon problème est le suivant : je ne veux pas mettre le code de $list dans une autre page et faire un include à la place de echo $list; mais de cette façon, ça fonctionne très bien... J'aimerais juste comprendre où je dois écrire le code de $list sans avoir à le mettre deux fois dans chaque 'case' de switch()...
Je comprends tout à fait qu'en mettant $list au dessus de switch(), il n'ait pas toutes les informations pour procéder, mais je ne vois pas où je peux le mettre (hormi sur une autre page.. je sais, je suis chiante...;)) sans avoir à le dupliquer.
Merci de vos lumière et bon week-end...
Caro.