01net    Web


Actuellement en ligne : 984 Utilisateurs dont 60 dans Programmation et développement >S'inscrire      >S'identifier      >Recherche      >Aide  
modéré par A.Ouloube, Beno@  
01net > Forum de 01net > Programmation et développement > PHP
> petit souci pour mon commentaire
Auteur
Message
 
<     1       >
tete_de_neuneu
  
   
      ?   @     Posté le 07/07/2008 12:30:50  
Voter pour ce message
bonjour j'éspére que tout le monde vas bien,

j'ai un petit probléme pour mes pages commentaires.

par exemple j'ai fais 2 pages avec un id différent donc voilà


// Renseigner ici l'ID de ce programme dans la table "programmes"
$id_programme = 1;
$nom_page = "windows_live_messenger.php";
$id_type="id_logiciels";
$table="logiciels";
$url_fichiers = "windows_live_messenger/windows_live_messenger/"; // le dossier où se situent les fichiers, terminé par un / !


et


// Renseigner ici l'ID de ce programme dans la table "programmes"
$id_programme = 2;
$nom_page = "messenger_plus_live.php";
$id_type="id_logiciels";
$table="logiciels";
$url_fichiers = "messenger_plus_live/messenger_plus_live/"; // le dossier où se situent les fichiers, terminé par un / !




donc en bas de la page j'ai mis mes 2 includes

<li><div class="texte_blanc">Commentaires :
<?php include('includes/connect01.php');
$reponse = mysql_query("SELECT COUNT(*) AS nbr_mess FROM commentaires");
$donnees = mysql_fetch_array($reponse);
$total = $donnees['nbr_mess'];
if ($total == 0)
{
echo '<p align="center" class="texte_blanc">Aucun message n\'a été posté';
}
if ($total == 1)
{
echo '' . $total . ' message a été posté';
}
if ($total > 1)
{
echo '' . $total . ' messages ont été postés</p>';
}
?></div></ul>

<?php
echo '<div style="text-align:center;" class="texte_blanc">';
$req_nbdl = sprintf('SELECT telechargements FROM logiciels WHERE id_logiciels=\'%d\'', $id_programme);
$nbdl = mysql_query($req_nbdl) or die($req_nbdl.'<br />'.mysql_error());

$dl = mysql_fetch_assoc($nbdl);
echo '<p><a href="?act=download&amp;id='.$id_programme.'" title="télécharger">Télécharger</a></p></div>';

include('commentaires/derniers_commentaires.php');
include('commentaires/ajout_commentaire.php');

echo '</div>';
?>


donc mes 2 pages commentaires sont

ajout_commentaire

<!-- On va commencer le formulaire -->

<br /><br /><fieldset><legend>mettez un commentaire</legend>

<p align="center" class="texte_blanc">
<div class="zform">

<input type="image" src="images/bbcodes/gras.png" onclick="javascript:bbcode('<gras>', '</gras>');return(false)" />
<input type="image" src="images/bbcodes/italique.png" onclick="javascript:bbcode('<italique>', '</italique>');return(false)" class="italique" alt="Italique" title="Italique" />
<input type="image" src="images/bbcodes/souligner.png" onclick="javascript:bbcode('<souligner>', '</souligner>');return(false)" alt="Souligner" title="Souligner" />
<input type="image" src="images/bbcodes/barrer.png" onclick="javascript:bbcode('<barrer>', '</barrer>');return(false)" alt="Barrer" title="Barrer" />
<input type="image" src="images/bbcodes/image.png" onclick="javascript:bbcode('<image>', '</image>');return(false)" alt="Image" title="Image" />
<input type="image" src="images/bbcodes/lien.png" onclick="javascript:bbcode('<lien>', '</lien>');return(false)" alt="Lien" title="Lien" />
<input type="image" src="images/bbcodes/citation.png" onclick="javascript:bbcode('<citation=AUTEUR>', '</citation>');return(false)" alt="Citation" title="Citation" />
<input type="image" src="images/bbcodes/liste.png" onclick="javascript:bbcode('<liste><puce>', '');return(false)" title="liste" alt="liste" />
<input type="image" src="images/bbcodes/mail.png" onclick="javascript:bbcode('<mail>', '</mail>');return(false)" alt="Mail" title="Mail" />
<input type="image" src="images/bbcodes/secret.png" onclick="javascript:bbcode('<secret>', '</secret>');return(false)" alt="Secret" title="Secret" />
<input type="image" src="images/bbcodes/information.png" onclick="javascript:bbcode('<information>', '</information>');return(false)" alt="Information" title="Information" />
<input type="image" src="images/bbcodes/attention.png" onclick="javascript:bbcode('<attention>', '</attention>');return(false)" alt="Attention" title="Attention" />
<input type="image" src="images/bbcodes/erreur.png" onclick="javascript:bbcode('<erreur>', '</erreur>');return(false)" alt="Erreur" title="Erreur" />
<input type="image" src="images/bbcodes/question.png" onclick="javascript:bbcode('<question>', '</question>');return(false)" alt="Question" title="Question" />
<br />
<br />
<select title="position" name="position" onchange="javascript: bbcode('<' + this.value + '>','</position>'); this.selectedIndex = 0;">
<option style="font-weight: bold;" class="position_titre" selected="selected">Position</option>
<option value="position valeur = gauche">Gauche</option>
<option value="position valeur = centrer">Centrer</option>
<option value="position valeur = droite">Droite</option>
<option value="position valeur = justifier">Justifier</option>
</select>

<select title="flottant" name="flottant" onchange="javascript: bbcode('<' + this.value + '>','</flottant>'); this.selectedIndex = 0;">
<option style="font-weight: bold;" class="position_titre" selected="selected">Flottant</option>
<option value="flottant valeur = A droite">A droite</option>
<option value="flottant valeur = A gauche">A gauche</option>
</select>

<select title="taille" name="taille" onchange="javascript: bbcode('<' + this.value + '>','</taille>'); this.selectedIndex = 0;">
<option style="font-weight: bold;" class="taille_titre" selected="selected">Taille</option>
<option value="taille valeur = ttgrand">Très très grand</option>
<option value="taille valeur = tgrand">Très grand</option>
<option value="taille valeur = grand">Grand</option>
<option value="taille valeur = petit">Petit</option>
<option value="taille valeur = tpetit">Très petit</option>
<option value="taille valeur = ttpetit">Très très petit</option>
</select>

<select title="Couleur" name="Couleur" onchange="javascript: bbcode('<' + this.value + '>','</couleur>'); this.selectedIndex = 0;">
<option style="font-weight: bold;" value="couleur_titre" selected="selected">Couleur</option>
<option style="color:#000000;" value="couleur nom = noir">Noir</option>
<option style="color:#000099;" value="couleur nom = bleu">Bleu</option>
<option style="color:#162277" value="couleur nom = bleu foncé">Bleu Foncé</option>
<option style="color:#A52A2A;" value="couleur nom = marron">Marron</option>
<option style="color:#757575;" value="couleur nom = gris">Gris</option>
<option style="color:#404040;" value="couleur nom = gris foncé">Gris Foncé</option>
<option style="color:#808080;" value="couleur nom = gris clair">Gris Clair</option>
<option style="color:#FFD700;" value="couleur nom = or">Or</option>
<option style="color:#FF0000;" value="couleur nom = rouge">Rouge</option>
<option style="color:#177531;" value="couleur nom = vert foncé">Vert Foncé</option>
<option style="color:#33CC00;" value="couleur nom = vert">Vert</option>
<option style="color:#ff88f8;" value="couleur nom = rose">Rose</option>
<option style="color:#CCCCCC;" value="couleur nom = argent">Argent</option>
<option style="color:#FFFF00;" value="couleur nom = jaune">Jaune</option>
<option style="color:#F73DF7;" value="couleur nom = fushia">Fushia</option>
<option style="color:#CC33CC;" value="couleur nom = violet">Violet</option>
<option style="color:#A7A700;" value="couleur nom = olive">Olive</option>
<option style="color:#66FFFF;" value="couleur nom = azur">Azur</option>
<option style="color:#FFC800;" value="couleur nom = orange">Orange</option>
<option style="color:navy;" value="couleur nom = marine">Marine</option>
<option style="color:aqua;" value="couleur nom = turquoise">Turquoise</option>
</select>

<select title="police" name="police" onchange="javascript: bbcode('<' + this.value + '>','</police>'); this.selectedIndex = 0;">
<option style="font-weight: bold;" class="police_titre" selected="selected">Police</option>
<option value="police valeur = arial">Arial</option>
<option value="police valeur = times">Times</option>
<option value="police valeur = courrier">Courrier</option>
<option value="police valeur = impact">Impact</option>
<option value="police valeur = geneva">Geneva</option>
<option value="police valeur = optima">Optima</option>
</select>

<select title="semantique" name="semantique" onchange="javascript: bbcode('<'+this.value+'>','</'+this.value+'>'); this.selectedIndex = 0;">
<option style="font-weight: bold;" class="taille_titre" selected="selected">Sémantique</option>
<option value="titre1">Titre 1</option>
<option value="titre2">Titre 2</option>
</select>
</div>
<br />
<div class="smilies_zform">

<a href="../tous_smilies.php" onclick="window.open(this.href,'popup','height=550 , width=90');window.id_textarea = 'texte'; return false;">Autres smileys</a>
<br />
<img src="images/smileys/clin.png" title="clin" alt="clin" onclick="javascript:smilies(' :clin: ');return(false)" />
<img src="images/smileys/blink.gif" title="blink" alt="blink" onclick="javascript:smilies(' :blink: ');return(false)" />
<img src="images/smileys/heureux.png" title="heureux" alt="heureux" onclick="javascript:smilies(' :heureux: ');return(false)" />
<img src="images/smileys/hihi.png" title="hihi" alt="hihi" onclick="javascript:smilies(' :hihi: ');return(false)" />
<br />
<img src="images/smileys/huh.png" title="huh" alt="huh" onclick="javascript:smilies(' :huh: ');return(false)" />
<img src="images/smileys/langue.png" title="langue" alt="langue" onclick="javascript:smilies(' :langue: ');return(false)" />
<img src="images/smileys/mechant.png" title="méchant" alt="méchant" onclick="javascript:smilies(' :mechant: ');return(false)" />
<img src="images/smileys/rire.gif" title="rire" alt="rire" onclick="javascript:smilies(' :rire: ');return(false)" />
<br />
<img src="images/smileys/triste.png" title="triste" alt="triste" onclick="javascript:smilies(' :triste: ');return(false)" />
<img src="images/smileys/siffle.png" title="siffle" alt="siffle" onclick="javascript:smilies(' :siffle: ');return(false)" />
<img src="images/smileys/smile.png" title="smile" alt="smile" onclick="javascript:smilies(' :smile: ');return(false)" />
<img src="images/smileys/unsure.gif" title="unsure" alt="unsure" onclick="javascript:smilies(' :unsure: ');return(false)" />
<br />
<br />
<a href="../mode_emploi.php">Mode d'emploi</a>
</div>

<p class="zform">
<textarea tabindex="30" rows="15" cols="90" id="textarea" name="message"></textarea>
</p>
<p align="center">
<input type="image" src="images/messages/previsualisation.png" value="Prévisualiser" onClick="previsualisation();return(false)" /><!-- ce bouton va permettre aux utilisateurs d'avoir un aperçu quand ils le veulent, pas en direct -->
</p>
<div id="previsualisation"></div>
<!-- on crée un div avec quelques caractéristiques, on lui donne un nom et on ne le remplit pas, on le laisse vide -->

<div style="text-align:center" class="texte_blanc">

<input type="image" src="images/messages/envoyer.png" alt="Envoyer" name="Envoyer"/>
</div></fieldset></form>

<!-- Fin du formulaire -->
<!-- On affiche les autres messages -->

<?php //Un ajout ?
include('includes/connect01.php');

//Sécurité anti-hack pour tout les champs
$pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo']));
$mail = mysql_real_escape_string(htmlspecialchars($_POST['mail']));
$message = mysql_real_escape_string(htmlspecialchars($_POST['message']));
$siteweb = mysql_real_escape_string(htmlspecialchars($_POST['siteweb']));

//Valeur par defaut
$pseudo_verif = 'Votre Pseudo';
$mail_verif = 'Votre Mail';
$site_verif = 'Votre Site';
$message_verif = 'Votre Message';

if ($_POST)
{
//Si pseudo OU message OU mail est vide
if ($_POST['pseudo'] == $pseudo_verif OR $_POST['message'] == $message_verif OR $_POST['mail'] == $mail_verif)
{
echo '<p class="texte_blanc" align="center">';
echo '<Script language="JavaScript">
setTimeout("document.location = \'../$nom_page.php\' ", 5)
</script>';
}
echo 'Veuillez remplir tout les champs svp !';
echo '</p>';

//Pour la date :)
$date = time();
$date = date('d/m/Y', $date);
$heure = time();
$heure = date('H:i', $heure);

//Si pseudi ET message ET mail ne sont pas vident & existent alors on ajoute !
if ($_POST['pseudo'] != $pseudo_verif AND $_POST['message'] != $message_verif AND $_POST['mail'] != $mail_verif)
{
if (isset($_POST['pseudo']) AND isset($_POST['message']) AND isset($_POST['mail']))
{
//On ajoute
mysql_query("INSERT INTO commentaires VALUES
('', '".$pseudo."', '".$message."', '".$date."', '".$heure."', '".$mail."', '".$siteweb."', '".$_POST['note']."' ) ");
//Message de remerciement
echo '<p class="texte_blanc" align="center">';
echo '<Script language="JavaScript">
setTimeout("document.location = \'../$nom_page.php\' ", 5)
</script>';
echo 'Votre message à bien été ajouté ! Merci';
//On redirige vers la page $nom_page.php
echo '</p>';
}
}

//On se deconnecte
}
mysql_close();
?>

derniere_commentaires

<?php
include('includes/connect01.php');

//Si personne n'a posté

$premier = mysql_query("SELECT COUNT(*) AS message_post FROM commentaires");
$message = mysql_fetch_array($premier);
$total = $message['message_post'];
if ($total == 0)
{
echo '<div align="center" class="texte_blanc">';
echo 'Soyez le premier à poster !';
echo '</div>';
echo '<br />';
}
if ($total >= 1)
{
//----------------------------------------------------------------------------------------------//
//Si quelqun a déja posté
// On met dans une variable le nombre de messages qu'on veut par page
$nombreDeMessagesParPage = 15; // Essayez de changer ce nombre pour voir :o)
// On récupère le nombre total de messages
$retour = mysql_query("SELECT COUNT(*) AS nb_messages FROM commentaires");
$donnees = mysql_fetch_array($retour);
$totalDesMessages = $donnees['nb_messages'];
// On calcule le nombre de pages à créer
$nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
// Puis on fait une boucle pour écrire les liens vers chacune des pages
echo '<p class="pages">Page : ';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
echo '<a href="'.$nom_page.'?page=' . $i . '">' . $i . '</a> ';
}

// --------------- Etape 3 ---------------
// Maintenant, on va afficher les messages
// ---------------------------------------

if (isset($_GET['page']))
{
$page = $_GET['page']; // On récupère le numéro de la page indiqué dans l'adresse ($nom_page.'?page=4)
}
else // La variable n'existe pas, c'est la première fois qu'on charge la page
{
$page = 1; // On se met sur la page 1 (par défaut)
}

// On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL
$premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;

$reponse = mysql_query('SELECT * FROM commentaires ORDER BY id_commentaire DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);

//On fait une boucle pour afficher tout les messages

while ($donnees = mysql_fetch_array($reponse))
{

//A partir d'ici tu doit faire appel à ta fonction de parsage comme ceci

?>
<br />
<br />
<div class="pseudo">Posté par :<a> <?php echo $donnees['pseudo']; ?></a> Le <a><?php echo $donnees['date']; ?></a> à <a><?php echo $donnees['heure']; ?> heure(s)</a></div>
<br />
<div class="message"><?php echo ($donnees['message']); ?></div>
<br />
<br />

<div class="pseudo">Votre Mail : <a href="mailto:<?php echo $donnees['mail']; ?>"><?php echo $donnees['mail']; ?></a> Votre note est : <a><?php echo $donnees['note']; ?>/20</a> Votre site : <a><?php echo $donnees['url']; ?></a></div>

<?php
echo '<br /><br />';
//On ferme le else
}
//On ferme la boucle
}
if ($total == 0)
{
echo '';
}
//On se deconnecte
mysql_close();
?>
<p class="pages">
<?php
mysql_connect("", "", "");
mysql_select_db("");
if ($total >=1)
{

// --------------- Etape 1 -----------------
// Si un message est envoyé, on l'enregistre
// -----------------------------------------

if (isset($_POST['pseudo']) AND isset($_POST['message']))
{
$pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo'])); // On utilise mysql_real_escape_string et htmlspecialchars par mesure de sécurité
$message = mysql_real_escape_string(htmlspecialchars($_POST['message'])); // De même pour le message
$message = nl2br($message); // Pour le message, comme on utilise un textarea, il faut remplacer les Entrées par des <br />

// On peut enfin enregistrer :o)
mysql_query("INSERT INTO commentaires VALUES('', '".$_POST['pseudo']."', '".$_POST['message']."')");
}

// --------------- Etape 2 -----------------
// On écrit les liens vers chacune des pages
// -----------------------------------------

// On met dans une variable le nombre de messages qu'on veut par page
$nombreDeMessagesParPage = 20; // Essayez de changer ce nombre pour voir :o)
// On récupère le nombre total de messages
$retour = mysql_query("SELECT COUNT(*) AS nb_messages FROM commentaires");
$donnees = mysql_fetch_array($retour);
$totalDesMessages = $donnees['nb_messages'];
// On calcule le nombre de pages à créer
$nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
// Puis on fait une boucle pour écrire les liens vers chacune des pages
echo 'Page : ';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
echo '<a href="'.$nom_page.'?page=' . $i . '">' . $i . '</a> ';
}
//On ferme if
}
if ($total == 0)
{
echo '';
}
?>

</p>


le souci les commentaires se répétent à chaque page hors j'ai mis un commentaire par exemple pour id_1 et pas id_2 mais il le met mo,n commentaire pour mon id_2 normalement il devrait pas répété mes commentaires

voilà mes pages :

http://le.coffre.free.fr/windows_live_messenger.php

et

http://le.coffre.free.fr/messenger_plus_live.php

merci d'avance

et si vous voulez voir mes table on ne sais jamais voilà

CREATE TABLE IF NOT EXISTS `commentaires` (
`id_commentaire` bigint(20) NOT NULL auto_increment,
`id_clins_d_oeil_amours` int(10) NOT NULL default '0',
`id_clins_d_oeil_anglais` int(10) NOT NULL default '0',
`id_clins_d_oeil_animaux` int(10) NOT NULL default '0',
`id_clins_d_oeil_coleres` int(10) NOT NULL default '0',
`id_clins_d_oeil_deustchs` int(10) NOT NULL default '0',
`id_clins_d_oeil_fetes` int(10) NOT NULL default '0',
`id_clins_d_oeil_francais` int(10) NOT NULL default '0',
`id_clins_d_oeil_humours` int(10) NOT NULL default '0',
`id_clins_d_oeil_italies` int(10) NOT NULL default '0',
`id_clins_d_oeil_nerlandais` int(10) NOT NULL default '0',
`id_clins_d_oeil_nouveaux` int(10) NOT NULL default '0',
`id_clins_d_oeil_puccas` int(10) NOT NULL default '0',
`id_clins_d_oeil_sexys` int(10) NOT NULL default '0',
`id_clins_d_oeil_smileys` int(10) NOT NULL default '0',
`id_clins_d_oeil_sons` int(10) NOT NULL default '0',
`id_clins_d_oeil_sports` int(10) NOT NULL default '0',
`id_fonds_dynamiques` int(10) NOT NULL default '0',
`id_moods` int(10) NOT NULL default '0',
`id_moods_sons` int(10) NOT NULL default '0',
`id_logiciels` int(10) NOT NULL default '0',
`id_scripts` int(10) NOT NULL default '0',
`id_plug_ins` int(10) NOT NULL default '0',
`id_series` int(10) NOT NULL default '0',
`id_sitcoms` int(10) NOT NULL default '0',
`membre_pseudo` varchar(255) character set latin1 collate latin1_bin NOT NULL,
`message` text character set latin1 collate latin1_bin NOT NULL,
`date` varchar(50) character set latin1 collate latin1_bin NOT NULL,
`heure` varchar(50) character set latin1 collate latin1_bin NOT NULL,
`mail` varchar(50) character set latin1 collate latin1_bin NOT NULL,
`url` varchar(50) character set latin1 collate latin1_bin NOT NULL,
`note` varchar(20) character set latin1 collate latin1_bin NOT NULL,
PRIMARY KEY (`id_commentaire`),
KEY `id_clins_d_oeil_amours` (`id_clins_d_oeil_amours`),
KEY `id_clins_d_oeil_anglais` (`id_clins_d_oeil_anglais`),
KEY `id_clins_d_oeil_animaux` (`id_clins_d_oeil_animaux`),
KEY `id_clins_d_oeil_coleres` (`id_clins_d_oeil_coleres`),
KEY `id_clins_d_oeil_deustchs` (`id_clins_d_oeil_deustchs`),
KEY `id_clins_d_oeil_fetes` (`id_clins_d_oeil_fetes`),
KEY `id_clins_d_oeil_francais` (`id_clins_d_oeil_francais`),
KEY `id_clins_d_oeil_humours` (`id_clins_d_oeil_humours`),
KEY `id_clins_d_oeil_italies` (`id_clins_d_oeil_italies`),
KEY `id_clins_d_oeil_nerlandais` (`id_clins_d_oeil_nerlandais`),
KEY `id_clins_d_oeil_nouveaux` (`id_clins_d_oeil_nouveaux`),
KEY `id_clins_d_oeil_puccas` (`id_clins_d_oeil_puccas`),
KEY `id_clins_d_oeil_sexys` (`id_clins_d_oeil_sexys`),
KEY `id_clins_d_oeil_smileys` (`id_clins_d_oeil_smileys`),
KEY `id_clins_d_oeil_sons` (`id_clins_d_oeil_sons`),
KEY `id_clins_d_oeil_sports` (`id_clins_d_oeil_sports`),
KEY `id_fonds_dynamiques` (`id_fonds_dynamiques`),
KEY `id_moods` (`id_moods`),
KEY `id_moods_sons` (`id_moods_sons`),
KEY `id_logiciels` (`id_logiciels`),
KEY `id_scripts` (`id_scripts`),
KEY `id_plug_ins` (`id_plug_ins`),
KEY `id_series` (`id_series`),
KEY `id_sitcoms` (`id_sitcoms`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=101 ;

--
-- Contenu de la table `commentaires`
--

INSERT INTO `commentaires` (`id_commentaire`, `id_clins_d_oeil_amours`, `id_clins_d_oeil_anglais`, `id_clins_d_oeil_animaux`, `id_clins_d_oeil_coleres`, `id_clins_d_oeil_deustchs`, `id_clins_d_oeil_fetes`, `id_clins_d_oeil_francais`, `id_clins_d_oeil_humours`, `id_clins_d_oeil_italies`, `id_clins_d_oeil_nerlandais`, `id_clins_d_oeil_nouveaux`, `id_clins_d_oeil_puccas`, `id_clins_d_oeil_sexys`, `id_clins_d_oeil_smileys`, `id_clins_d_oeil_sons`, `id_clins_d_oeil_sports`, `id_fonds_dynamiques`, `id_moods`, `id_moods_sons`, `id_logiciels`, `id_scripts`, `id_plug_ins`, `id_series`, `id_sitcoms`, `membre_pseudo`, `message`, `date`, `heure`, `mail`, `url`, `note`) VALUES
(1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'tete', 0x266c743b677261732667743b67726173266c743b2f677261732667743b0d0a266c743b6974616c697175652667743b6974616c69717565266c743b2f6974616c697175652667743b0d0a266c743b736f756c69676e65722667743b736f756c69676e6572266c743b2f736f756c69676e65722667743b0d0a266c743b6261727265722667743b626172726572266c743b2f6261727265722667743b0d0a0d0a266c743b696d6167652667743b687474703a2f2f74626e302e676f6f676c652e636f6d2f696d616765733f713d74626e3a476353317675396a636e5177624d3a636f6e74656e742e616e73776572732e636f6d2f6d61696e2f636f6e74656e742f77702f656e2f7468756d622f372f37652f33303070782d4772616e64655f74657272652e6a7067266c743b2f696d6167652667743b0d0a0d0a, '20/06/08', '16 h 30', 'le.coffre@free.fr', 'le.coffre.free.fr', '15');


et

CREATE TABLE IF NOT EXISTS `logiciels` (
`id_logiciels` bigint(20) NOT NULL auto_increment,
`fichier` varchar(255) collate latin1_general_ci NOT NULL,
`telechargements` int(10) NOT NULL default '0',
`vote_0` int(10) NOT NULL default '0',
`vote_1` int(10) NOT NULL default '0',
`vote_2` int(10) NOT NULL default '0',
`vote_3` int(10) NOT NULL default '0',
`vote_4` int(10) NOT NULL default '0',
`vote_5` int(10) NOT NULL default '0',
PRIMARY KEY (`id_logiciels`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=41 ;

--
-- Contenu de la table `logiciels`
--

INSERT INTO `logiciels` (`id_logiciels`, `fichier`, `telechargements`, `vote_0`, `vote_1`, `vote_2`, `vote_3`, `vote_4`, `vote_5`) VALUES
(1, 'windows_live_messenger.rar', 1, 0, 0, 0, 0, 0, 0),
(2, 'messenger_plus_live.rar', 2, 0, 0, 0, 0, 0, 0),


merci de votre aide pour évité que les commentaire se répétent

@ bientôt
Beno@
  
  :-)
      ?   @     Posté le 07/07/2008 12:51:25  
Voter pour ce message
$reponse = mysql_query('SELECT * FROM commentaires ORDER BY id_commentaire DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);

il faut selectionner les commentaire uniquement qui se rapportent à l'article
tete_de_neuneu
  
   
      ?   @     Posté le 07/07/2008 16:37:25  
Voter pour ce message
re merci donc ca vien ce code :

// On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL
$premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;

$reponse = mysql_query('SELECT * FROM commentaires ORDER BY id_commentaire DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);

//On fait une boucle pour afficher tout les messages


il faut mettre quoi car c'est là où je suis coincé

merci de ton aide
Beno@
  
  :-)
      ?   @     Posté le 07/07/2008 16:49:03  
Voter pour ce message
ca dépend de la manière dont vous enregistrez l'id de l'article auquel le commentaire se réfère
tete_de_neuneu
  
   
      ?   @     Posté le 07/07/2008 18:06:00  
Voter pour ce message
RE

la maniére que je veux et simple

si on met un commentaire sur wlm il mettras son commentaire et comme ça sur les autres logiciel où script où plug ing etc... il afficheras pas de commentaires

donc il auras id_2 pour wlm

si tu veux que je te met mes tables pour voir comment j'ai fais voilà mes tables

http://le.coffre.free.fr/table.txt

merci de ton aide
Beno@
  
  :-)
      ?   @     Posté le 07/07/2008 18:09:09  
Voter pour ce message
pour un logiciel,c a doit être WHERE id_logiciels='id du logiciel'

mais en même temps c'est vous qui êtes censé avoir créé le site donc je ne le connais pas plus que vous :/
tete_de_neuneu
  
   
      ?   @     Posté le 11/07/2008 21:32:06  
Voter pour ce message
Bonjour, j'ai tout refais et amélioré ma page commentaire avec membre_ pseudo etc... Avec tout les informations du forum hors de son inscription

Mais quand je mets un message il oublie de le mettre le message posté

Voilà la page :

<lien>http://le.coffre.free.fr/windows_live_messenger.php</lien>

Mais il faut se connecté donc voilà

Le pseudo : tester
MDP : 12345678

Donc j'ai mis comme code dans mes 2 pages :

Dans la page principal :


<li><div class="texte_blanc">Commentaires :

<?php include('includes/connect01.php');
$reponse = mysql_query("SELECT COUNT(*) AS nbr_mess FROM commentaires");
$donnees = mysql_fetch_array($reponse);
$total = $donnees['nbr_mess'];
if ($total == 0)
{
echo '(0)';
}
if ($total == 1)
{
echo '' . $total . ' message a été posté';
}
if ($total > 1)
{
echo '' . $total . ' messages ont été postés';
}
?>
</div>
<li><div class="texte_blanc">Votre Note :
<img src="images/notes/rouge.gif" id='_1' onclick="valider()" onmouseover="rate(1)" />
<img src="images/notes/rouge.gif" id='_2' onclick="valider()" onmouseover="rate(2)" />
<img src="../images/notes/rouge.gif" id='_3' onclick="valider()" onmouseover="rate(3)" />
<img src="images/notes/rouge.gif" id='_4' onclick="valider()" onmouseover="rate(4)" />
<img src="images/notes/rouge.gif" id='_5' onclick="valider()" onmouseover="rate(5)" />
<br />
<div id="vote">Votre vote : 0 étoile(s) </div>
<input type="button" onclick="zero();" value="reset"/>
</div></li></ul>

<?php

echo '<div style="text-align:center;" class="texte_blanc">';
$req_nbdl = sprintf('SELECT telechargements FROM logiciels WHERE id_logiciels=\'%d\'', $id_programme);
$nbdl = mysql_query($req_nbdl) or die($req_nbdl.'<br />'.mysql_error());

$dl = mysql_fetch_assoc($nbdl);
echo '<p><a href="?act=download&amp;id='.$id_programme.'" title="télécharger">Télécharger</a></p></div>';

include('commentaires/derniers_commentaires.php');
include('commentaires/ajout_commentaire.php');

echo '</div>';
?>



Donc j'ai mis un système de vote que je m'occuperais après avoir résolu les messages posté que c'est impossible actuellement

Donc voilà la page ajout_commentaire.php



Mon formulaire que j'ai mis en haut je ne mets pas pour évité que ça soit long

En sous du formulaire voilà le code

<!-- Fin du formulaire -->
<!-- On affiche les autres messages -->

<?php

//Un ajout ?
include('includes/connect01.php');

//Sécurité anti-hack pour tout les champs
$pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo']));
$mail = mysql_real_escape_string(htmlspecialchars($_POST['mail']));
$message = mysql_real_escape_string(htmlspecialchars($_POST['message']));
$siteweb = mysql_real_escape_string(htmlspecialchars($_POST['siteweb']));

//Valeur par defaut
$pseudo_verif = 'Votre Pseudo';
$mail_verif = 'Votre Mail';
$site_verif = 'Votre Site';
$message_verif = 'Votre Message';

if ($_POST)
{
//Si pseudo OU message OU mail est vide
if ($_POST['pseudo'] == $pseudo_verif OR $_POST['message'] == $message_verif OR $_POST['mail'] == $mail_verif)
{
echo '<p class="texte_blanc" align="center">';
echo '<Script language="JavaScript">
setTimeout("document.location = \'../$nom_page.php\' ", 5)
</script>';
}
echo 'Veuillez remplir tout les champs svp !';
echo '</p>';

//Pour la date :)
$date = time();
$date = date('d/m/Y', $date);
$heure = time();
$heure = date('H:i', $heure);

//Si pseudi ET message ET mail ne sont pas vident & existent alors on ajoute !
if ($_POST['pseudo'] != $pseudo_verif AND $_POST['message'] != $message_verif AND $_POST['mail'] != $mail_verif)
{
if (isset($_POST['pseudo']) AND isset($_POST['message']) AND isset($_POST['mail']))
{
//On ajoute
mysql_query("INSERT INTO commentaires VALUES
('', '".$pseudo."', '".$message."', '".$date."', '".$heure."', '".$mail."', '".$siteweb."', '".$_POST['note']."' ) ");
//Message de remerciement
echo '<p class="texte_blanc" align="center">';
echo '<Script language="JavaScript">
setTimeout("document.location = \'../$nom_page.php\' ", 5)
</script>';
echo 'Votre message à bien été ajouté ! Merci';
//On redirige vers la page $nom_page.php
echo '</p>';
}
}

//On se deconnecte
}
mysql_close();
?>



derniere_comentaire.php

Donc j'ai rajouté une requête pour affiché la table membre etc. + tout les id que j'ai mis dans ma table commentaire pour évité que ça se répètent à chaque page hors il se répètent donc avoir ù est l'erreur

Donc voilà le code :



<?php
include('includes/connect01.php');

//Si personne n'a posté

$premier = mysql_query("SELECT COUNT(*) AS message_post FROM commentaires");
$message = mysql_fetch_array($premier);
$total = $message['message_post'];
if ($total == 0)
{
echo '<div align="center" class="texte_blanc">';
echo 'Soyez le premier à poster !';
echo '</div>';
echo '<br />';
}
if ($total >= 1)
{
//----------------------------------------------------------------------------------------------//
//Si quelqun a déja posté
// On met dans une variable le nombre de messages qu'on veut par page
$nombreDeMessagesParPage = 15; // Essayez de changer ce nombre pour voir :o)
// On récupère le nombre total de messages
$retour = mysql_query("SELECT COUNT(*) AS nb_messages FROM commentaires");
$donnees = mysql_fetch_array($retour);
$totalDesMessages = $donnees['nb_messages'];
// On calcule le nombre de pages à créer
$nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
// Puis on fait une boucle pour écrire les liens vers chacune des pages
echo '<p class="pages">Page : ';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
echo '<a href="'.$nom_page.'?page=' . $i . '">' . $i . '</a> ';
}

// --------------- Etape 3 ---------------
// Maintenant, on va afficher les messages
// ---------------------------------------

if (isset($_GET['page']))
{
$page = $_GET['page']; // On récupère le numéro de la page indiqué dans l'adresse ($nom_page.'?page=4)
}
else // La variable n'existe pas, c'est la première fois qu'on charge la page
{
$page = 1; // On se met sur la page 1 (par défaut)
}

// On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL
$premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;

$reponse = mysql_query('SELECT * FROM commentaires id_clins_d_oeil_amours, id_clins_d_oeil_anglais, id_clins_d_oeil_animaux, id_clins_d_oeil_coleres, id_clins_d_oeil_deustchs, id_clins_d_oeil_fetes, id_clins_d_oeil_francais, id_clins_d_oeil_humours, id_clins_d_oeil_italies, id_clins_d_oeil_nerlandais, id_clins_d_oeil_nouveaux, id_clins_d_oeil_puccas, id_clins_d_oeil_sexys, id_clins_d_oeil_smileys, id_clins_d_oeil_sons, id_clins_d_oeil_sports, id_fonds_dynamiques, id_moods, id_moods_sons, id_logiciels, id_scripts, id_plug_ins, id_series, id_sitcoms ORDER BY id_commentaire DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);

//On fait une boucle pour afficher tout les messages

while ($donnees = mysql_fetch_array($reponse))
{

//A partir d'ici tu doit faire appel à ta fonction de parsage comme ceci
$message_parse = code($donnees['message']);
//On récupère les infos du membre

$requete1 = mysql_query('SELECT * FROM forum_membres WHERE membre_id='.$membre.'');
if ($data1 = mysql_fetch_assoc($requete1))
{
}
?>
<br />
<br />
<div class="pseudo">Posté par :<a> <?php echo $data1['membre_pseudo']; ?></a> Le <a><?php echo $donnees['date']; ?></a> à <a><?php echo $donnees['heure']; ?> heure(s)</a></div>
<br />
<div class="message"><?php echo code($donnees['message']); ?></div>
<br />
<br />

<div class="pseudo">Votre Mail : <a href="mailto:<?php echo $donnees['mail']; ?>"><?php echo $donnees['mail']; ?></a> Votre note est : <a><?php echo $donnees['note']; ?>/20</a> Votre site : <a><?php echo $donnees['url']; ?></a></div>

<?php
echo '<br /><br />';
//On ferme le else
}
//On ferme la boucle
}
if ($total == 0)
{
echo '';
}
//On se deconnecte
mysql_close();


if ($total >=1)
{

// --------------- Etape 1 -----------------
// Si un message est envoyé, on l'enregistre
// -----------------------------------------

if (isset($_POST['pseudo']) AND isset($_POST['message']))
{
$pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo'])); // On utilise mysql_real_escape_string et htmlspecialchars par mesure de sécurité
$message = mysql_real_escape_string(htmlspecialchars($_POST['message'])); // De même pour le message
$message = nl2br($message); // Pour le message, comme on utilise un textarea, il faut remplacer les Entrées par des <br />

// On peut enfin enregistrer :o)
mysql_query("INSERT INTO commentaires VALUES('', '".$_POST['pseudo']."', '".$_POST['message']."')");
}

// --------------- Etape 2 -----------------
// On écrit les liens vers chacune des pages
// -----------------------------------------

// On met dans une variable le nombre de messages qu'on veut par page
$nombreDeMessagesParPage = 20; // Essayez de changer ce nombre pour voir :o)
// On récupère le nombre total de messages
$retour = mysql_query("SELECT COUNT(*) AS nb_messages FROM commentaires");
$donnees = mysql_fetch_array($retour);
$totalDesMessages = $donnees['nb_messages'];
// On calcule le nombre de pages à créer
$nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
// Puis on fait une boucle pour écrire les liens vers chacune des pages
echo '<p class="pages">Page : ';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
echo '<a href="'.$nom_page.'?page=' . $i . '">' . $i . '</a> ';
}
//On ferme if
}
if ($total == 0)
{
echo '</p>';
}
?>



Merci de votre aide.
<     1       >

01net > Forum de 01net > Programmation et développement > PHP
> petit souci pour mon commentaire

Aller à :

Page générée en : 0.159s - X2board 2.2

Nous contacter | Charte de confiance | Voir notice légale

Tous droits réservés © 1999 - 2008 Groupe Tests - 01net.


Sites du réseau 01net Network : 01net - 01men - Rmc.fr - Bfmtv.fr - Radiobfm.com - TousLesPodcasts - Micro Achat

GADGET 2.0
RSS, podcast, widgets, web TV et radio, jeux en ligne ... le portail de bureau personnalisable à l'infini !
Elections US
Le duel MCCain/Obama : parcours, programmes, équipes et soutiens, tout sur leurs galaxies politiques