Vous n'êtes pas identifié(e).
Pages :: 1
Bonsoir,
Mon problème est que quand je souhaite écrire sur mon forum, on ne peut pas voir l'auteur ni par qui... Voici un lien vous montrant le souci ICI
La personne qui à poster est bien inscrite.
Voici le code du forum:
$requete = mysql_query('SELECT * FROM forum_cat ORDER BY place');
while($donnees = mysql_fetch_object($requete))
{
if($member_level >= $donnees->lvl)
{
$_test1=$donnees;
echo''
.'<table cellspacing="0" cellpadding="0" style="width:100%;text-align:center;">'
.'<tr>'
.'<td colspan="4" align="center" style="'.STYLE_TITRE.'padding-top:2px;padding-bottom:2px;"><b>'.$donnees->titre.'</b></td>'
.'</tr>'
.'<tr>'
.'<td style="width:45%;'.STYLE_TITRE.'">'.FORUM.'</td>'
.'<td style="width:15%;'.STYLE_TITRE.'">'.SUJETS.'</td>'
.'<td style="width:15%;'.STYLE_TITRE.'">'.MESSAGES.'</td>'
.'<td style="width:25%;'.STYLE_TITRE.'">'.LAST_MESSAGE.'</td>'
.'</tr>'
;
$color_num=1;
$requete2 = mysql_query('SELECT * FROM forum_scat WHERE cat_id="'.$donnees->id.'" ORDER BY place');
while($donnees2 = mysql_fetch_object($requete2))
{
$cocolor=($color_num == 1)?$_color[3]:$_color[4];
if($member_level >= $donnees2->lvl)
{
$_test2=$donnees2;
$scat_id=$donnees2->id;
$requete3 = mysql_query('SELECT COUNT(*) AS nb_entree FROM forum_topic WHERE scat_id="'.$scat_id.'"');
$nb_entree = mysql_fetch_array($requete3);
$nb_topic = $nb_entree['nb_entree'];
$requete4 = mysql_query('SELECT COUNT(*) AS nb_entree FROM forum_messages WHERE scat_id="'.$scat_id.'"');
$nb_entree2 = mysql_fetch_array($requete4);
$nb_messages = $nb_entree2['nb_entree'];
if($nb_messages > 0)
{
$requete5 = mysql_query('SELECT * FROM forum_messages WHERE scat_id="'.$scat_id.'" ORDER BY date DESC LIMIT 1');
$donnees5 = mysql_fetch_object($requete5);
$date1 = date('d/m/Y' ,$donnees5->date);
$date2 = date('d/m/Y' ,time());
if($date1 == $date2)
{
$auteur=$donnees5->auteur;
$date = TODAY.' '.A.' '.date('H\:i' ,$donnees5->date);
$dernier_message = PAR.' <b>'.$auteur.'</b><br /><i>'. $date.'</i>';
}
else
{
$auteur=$donnees5->auteur;
$date = LE.' : '.date('d/m/Y' ,$donnees5->date).' '.A.' '.date('H\:i' ,$donnees5->date);
$dernier_message = PAR.' <b>'.$auteur.'</b><br /><i>'. $date.'</i>';
}
}
if($nb_messages == 0)
{
$nb_topic = '-';
$nb_messages = '-';
$dernier_message = '-';
}
echo''
.'<tr>'
.'<td align="left" style="background-color:'.$cocolor.';border:1px solid '.$_color[2].';border-top:none;border-right:none;padding-left:5px;padding-top:10px;padding-bottom:10px;"><b><a href="index.php?page=Forum&page_name=topics&scat='.$scat_id.'">'.$donnees2->titre.'</a></b></td>'
.'<td style="background-color:'.$cocolor.';border:1px solid '.$_color[2].';border-top:none;border-right:none;border-left:none;">'.$nb_topic.'</td>'
.'<td style="background-color:'.$cocolor.';border:1px solid '.$_color[2].';border-top:none;border-right:none;border-left:none;">'.$nb_messages.'</td>'
.'<td style="background-color:'.$cocolor.';border:1px solid '.$_color[2].';border-top:none;border-left:none;">'.$dernier_message.'</td>'
.'</tr>'
;
$color_num=($color_num == 2)?0:$color_num;
$color_num++;
}
}
if(empty($_test2))
{
echo'<tr><td colspan="4" style="text-align:center;padding:3px;">- '.NO_SOUS_CATEGORIES.' -</td></tr>';
}
echo''
.'</table>'
.'<br />'
;
}
$_test2='';
}
if(empty($_test1))
{
echo'<div style="text-align:center;">- '.NO_CATEGORIES.' -</div>';
}
?>
Merci pour votre aide...
Hors ligne
comme tu vois c'est un site que j'ai acheter y'a quelques semaines
Hors ligne
Bien je te souhaite bien du courage... j'espère que tu ne l'as pas acheté bien cher, car il risque de te coûter pas mal en maintenance et en mise à jour. De plus il n'utilise pas PDO, donc question compatibilité PHP6 etc, pas top.
Ensuite pour ton problème, le fait qu'il y est fait une utilisation abusive du SELECT *, question pertinence des noms de colonnes aucun moyen de vérifier sans voir la base de données...
++
POO PHP+Ajax en MVC avec PDO et Bases de données épaisses : What else?
Hors ligne
ça va 50€ mais si tu connais un code me permettant d'introduire un forum dans un site comme celui-ci n'hésite pas ^^
pour le problème
--
-- Structure de la table `forum_cat`
--
CREATE TABLE IF NOT EXISTS `forum_cat` (
`id` int(11) NOT NULL auto_increment,
`place` int(10) NOT NULL default '0',
`titre` varchar(60) NOT NULL,
`lvl` int(11) NOT NULL default '0',
PRIMARY KEY (`id`),
UNIQUE KEY `titre` (`titre`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=10 ;
--
-- Structure de la table `forum_messages`
--
CREATE TABLE IF NOT EXISTS `forum_messages` (
`id` int(11) NOT NULL auto_increment,
`topic_id` int(11) NOT NULL default '0',
`Scat_id` int(11) NOT NULL default '0',
`auteur` varchar(25) NOT NULL default '',
`titre` varchar(60) NOT NULL default '',
`message` text NOT NULL,
`date` int(11) NOT NULL default '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=39 ;
--
-- Structure de la table `forum_scat`
--
CREATE TABLE IF NOT EXISTS `forum_scat` (
`id` int(11) NOT NULL auto_increment,
`cat_id` int(11) NOT NULL default '0',
`place` int(10) NOT NULL default '0',
`titre` varchar(60) NOT NULL,
`lvl` int(11) NOT NULL default '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=6 ;
--
-- Structure de la table `forum_topic`
--
CREATE TABLE IF NOT EXISTS `forum_topic` (
`id` int(11) NOT NULL auto_increment,
`Scat_id` int(11) NOT NULL default '0',
`titre` varchar(60) NOT NULL,
`auteur` varchar(25) NOT NULL,
`date` int(11) NOT NULL default '0',
`date2` int(11) NOT NULL default '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=7 ;
Hors ligne
Pages :: 1