Recherche de tuto - commantaire
Edouard73
Messages postés
150
Statut
Membre
-
Edouard73 Messages postés 150 Statut Membre -
Edouard73 Messages postés 150 Statut Membre -
Bonjour,
Voila, ma recherche risque de ne pas être très claire car je ne sais vraiment comment expliquer. enfin,
je cherche des tutoriaux ou exemple de code php me permettant de comprendre et réaliser l'ajoute de commantaire à la suite d'une news.
Pour l'ajout d'un commentaire comme une sorte de livre d'or je sais faire. Mais la ou je bloc c'est comment ajouter un commentaire sur une news qui a été généré par une base MYSQL.
Si vous auriez un début de réponse afin d'éclairer mes recherches de tutos ça serait super sympa.
merci.
edouard
Voila, ma recherche risque de ne pas être très claire car je ne sais vraiment comment expliquer. enfin,
je cherche des tutoriaux ou exemple de code php me permettant de comprendre et réaliser l'ajoute de commantaire à la suite d'une news.
Pour l'ajout d'un commentaire comme une sorte de livre d'or je sais faire. Mais la ou je bloc c'est comment ajouter un commentaire sur une news qui a été généré par une base MYSQL.
Si vous auriez un début de réponse afin d'éclairer mes recherches de tutos ça serait super sympa.
merci.
edouard
A voir également:
- Recherche de tuto - commantaire
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Tuto tableau croisé dynamique - Guide
- Rechercher ou entrer l'adresse mm - recherche google - Guide
- Tuto torrent - Guide
- Recherche image - Guide
9 réponses
coucou
merci pour les liens
mais n'existe t'il pas un exemple détaillé sur la réalisation d'un blog ?
du moins la ou je bloque c'est une fois la news est ajouté comment faire en sorte que la base crée une table propre à la news lui permettant d'ajouter les commentaire.
merci pour les liens
mais n'existe t'il pas un exemple détaillé sur la réalisation d'un blog ?
du moins la ou je bloque c'est une fois la news est ajouté comment faire en sorte que la base crée une table propre à la news lui permettant d'ajouter les commentaire.
Bjr
En fait c'est plus du côté de la structure de ta base de données MySQL que du code PHP qu'il faut te pencher
Si tu as un accès total à la structure de ta base MySQL alors le mieux est de créer une table commentaires par ex qui va contenir tous les commentaires pour toutes les news et surtout pas une table par news !
Si on suppose que dans ta table news chaque news est identifiée par une clé unique par ex news_id alors la structure de la table commentaires doit comporter un index composité basé par ex sur cmt_news_id + cmt_idx
cmt_news_id : identifiant dans la table news
cmt_idx : rang du commentaire pour une news donnée
En fait c'est plus du côté de la structure de ta base de données MySQL que du code PHP qu'il faut te pencher
Si tu as un accès total à la structure de ta base MySQL alors le mieux est de créer une table commentaires par ex qui va contenir tous les commentaires pour toutes les news et surtout pas une table par news !
Si on suppose que dans ta table news chaque news est identifiée par une clé unique par ex news_id alors la structure de la table commentaires doit comporter un index composité basé par ex sur cmt_news_id + cmt_idx
cmt_news_id : identifiant dans la table news
cmt_idx : rang du commentaire pour une news donnée
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
je pige le truc. mais c'est la ou je bloc.
car en faite la news est généré via la base de donnée avec insert to. je n'ouvre pas mon editeur html pour inserer la news et la charger sur le ftp.
donc mon soucie est que si je comprends ton explication, a chaque news, je crée une table qui me permet de créer et stocké les commantaire pour une news.
Mais mon soucie est que je cherche justement, maintenant que c'est plus claire à créer une table (commentaire) automatiquement propre à une news chaque fois que je crée une news.
en gros :
je crée news 1. j'ai une table commentaire qui se crée.
je crée news 2. j'ai une table commentaire qui se crée.
...
Quand je crée news id 1, le insert to crée dans la base une table qui sera uniquement utilisé pour les commantaires de l'id news id 1.
donc si quelqu'un aurai un exemple de code complet (php et mysql) ou un lien vers un tuto ça serais super cool :)
Edouard
je pige le truc. mais c'est la ou je bloc.
car en faite la news est généré via la base de donnée avec insert to. je n'ouvre pas mon editeur html pour inserer la news et la charger sur le ftp.
donc mon soucie est que si je comprends ton explication, a chaque news, je crée une table qui me permet de créer et stocké les commantaire pour une news.
Mais mon soucie est que je cherche justement, maintenant que c'est plus claire à créer une table (commentaire) automatiquement propre à une news chaque fois que je crée une news.
en gros :
je crée news 1. j'ai une table commentaire qui se crée.
je crée news 2. j'ai une table commentaire qui se crée.
...
Quand je crée news id 1, le insert to crée dans la base une table qui sera uniquement utilisé pour les commantaires de l'id news id 1.
donc si quelqu'un aurai un exemple de code complet (php et mysql) ou un lien vers un tuto ça serais super cool :)
Edouard
en gros :
je crée news 1. j'ai une table commentaire qui se crée.
je crée news 2. j'ai une table commentaire qui se crée.
Non justement ! On ne créé que très rarement des tables "dynamiquement".
Tu as une seule table dans laquelle tu stockes tous les commentaires de toutes les news : c'est table est créée une fois pour toute au départ le plus souvent manuellement à l'aide d'une requête ou via un outils comme PHPMyAdmin par ex.
Qd tu créés un news tu ne créés rien dans la table commentaires : c'est uniquement lorsqu'un internaute commente ta news que tu ajoutes un enregistrement dans la table commentaires.
je crée news 1. j'ai une table commentaire qui se crée.
je crée news 2. j'ai une table commentaire qui se crée.
Non justement ! On ne créé que très rarement des tables "dynamiquement".
Tu as une seule table dans laquelle tu stockes tous les commentaires de toutes les news : c'est table est créée une fois pour toute au départ le plus souvent manuellement à l'aide d'une requête ou via un outils comme PHPMyAdmin par ex.
Qd tu créés un news tu ne créés rien dans la table commentaires : c'est uniquement lorsqu'un internaute commente ta news que tu ajoutes un enregistrement dans la table commentaires.
donc si je comprends bien...
la colonne "commentaire" se trouve déjà dans la table news. et en réalité, lorsque l'internaute ajoute un commentaire je n'ai qu'a utiliser
("UPDATE news SET '', '', '', '', '', ... , commentaire='" . $commentaire. "' WHERE id='$idd'")
et pour visualisé la news je n'ai qu'a montrer <?php echo $donnees['commentaire']; ?>
si c'est ça... je m'imaginais avoir à faire à un truc énorme alors que c'est presque rien !!!!
la colonne "commentaire" se trouve déjà dans la table news. et en réalité, lorsque l'internaute ajoute un commentaire je n'ai qu'a utiliser
("UPDATE news SET '', '', '', '', '', ... , commentaire='" . $commentaire. "' WHERE id='$idd'")
et pour visualisé la news je n'ai qu'a montrer <?php echo $donnees['commentaire']; ?>
si c'est ça... je m'imaginais avoir à faire à un truc énorme alors que c'est presque rien !!!!
Oui c'est une possibilité sauf si tu autorises plusieurs commentaires pour une même news (ce qui est souvent le cas non ?) : là tu est obligé de passer par une table à part pour y stocker les commentaires.
Donc c'est qd même un peu plus compliqué qu'un simple INSERT
Donc c'est qd même un peu plus compliqué qu'un simple INSERT
Youpiii j'y suis arrivé
Voici les codes. si ça peux servir à d'autre.
première étape créer 2 bases
1 pour les news (news)
id - int(11)
comA - varchar(11)
titre - varchar(35)
image - text
url - text
description - varchar(250)
et une pour les commentaires (com)
id - int(11)
comA - varchar(11)
nom - varchar(25)
ur -l varchar(75)
contenu - varchar(150)
notez que ce qui va faire le liens entre les deux base est la ligne comA
Page des news
<?php
mysql_connect("serveur", "login", "password");
mysql_select_db("base");
$nombreDeMessagesParPage = 10;
$retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM partEL');
$donnees = mysql_fetch_array($retour);$totalDesMessages = $donnees['nb_messages'];
$nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
if (isset($_GET['page']))
{
$page = $_GET['page'];
}
else
{
$page = 1;
}
$premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;
$reponse = mysql_query('SELECT * FROM news ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);
while ($donnees = mysql_fetch_array($reponse))
{
?>
<?php echo stripslashes ($donnees['titre']); ?>
<?php $image = $donnees['image']; echo "<img src='$image'/>";?>
<a class="link1" href="<?php echo stripslashes ($donnees['url']); ?>" target="_parent"><?php echo stripslashes ($donnees['url']); ?></a>
<?php echo $donnees['description']; ?>
<?php echo '<a class="link1" href="commentaires.php?comA=' . $donnees['comA'] . '">'; ?>Commentaires</a>
<?php
}
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
echo '<a class="linkpagination" href="news.php?page=' . $i . '">' . $i . '</a> ';
}
mysql_close();
?>
Page des commentaires
<?php
$com = $_GET['comA'];
mysql_connect("serveur", "login", "password");
mysql_select_db("base de donnée");
$reponse = mysql_query('SELECT * FROM news WHERE comA="'.$_GET['comA'].'" LIMIT 1');
while($donnees = mysql_fetch_array($reponse))
{
?>
<?php echo stripslashes ($donnees['titre']); ?>
<?php $image = $donnees['image']; echo "<img src='$image'/>";?>
<a class="link1" href="<?php echo stripslashes ($donnees['url']); ?>" target="_parent"><?php echo stripslashes ($donnees['url']); ?></a>
<?php echo $donnees['description']; ?>
<?php
}
mysql_close();
?>
<?php
mysql_connect("serveur", "loggin", "password");
mysql_select_db("carairfreurolo");
$reponse = mysql_query('SELECT * FROM com WHERE comA="'.$com.'"');
while($donnees = mysql_fetch_array($reponse))
{
?>
<a href="<?php echo stripslashes ($donnees['url']); ?>" class="link1" title="commentez ce partenaire"><?php echo stripslashes ($donnees['nom']); ?></a>
<?php echo $donnees['contenu']; ?>
<?php
}
mysql_close();
?>
ce qui fait le liens avec les deux bases c'est $com = $_GET['comA'];
Voici les codes. si ça peux servir à d'autre.
première étape créer 2 bases
1 pour les news (news)
id - int(11)
comA - varchar(11)
titre - varchar(35)
image - text
url - text
description - varchar(250)
et une pour les commentaires (com)
id - int(11)
comA - varchar(11)
nom - varchar(25)
ur -l varchar(75)
contenu - varchar(150)
notez que ce qui va faire le liens entre les deux base est la ligne comA
Page des news
<?php
mysql_connect("serveur", "login", "password");
mysql_select_db("base");
$nombreDeMessagesParPage = 10;
$retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM partEL');
$donnees = mysql_fetch_array($retour);$totalDesMessages = $donnees['nb_messages'];
$nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
if (isset($_GET['page']))
{
$page = $_GET['page'];
}
else
{
$page = 1;
}
$premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;
$reponse = mysql_query('SELECT * FROM news ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);
while ($donnees = mysql_fetch_array($reponse))
{
?>
<?php echo stripslashes ($donnees['titre']); ?>
<?php $image = $donnees['image']; echo "<img src='$image'/>";?>
<a class="link1" href="<?php echo stripslashes ($donnees['url']); ?>" target="_parent"><?php echo stripslashes ($donnees['url']); ?></a>
<?php echo $donnees['description']; ?>
<?php echo '<a class="link1" href="commentaires.php?comA=' . $donnees['comA'] . '">'; ?>Commentaires</a>
<?php
}
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
echo '<a class="linkpagination" href="news.php?page=' . $i . '">' . $i . '</a> ';
}
mysql_close();
?>
Page des commentaires
<?php
$com = $_GET['comA'];
mysql_connect("serveur", "login", "password");
mysql_select_db("base de donnée");
$reponse = mysql_query('SELECT * FROM news WHERE comA="'.$_GET['comA'].'" LIMIT 1');
while($donnees = mysql_fetch_array($reponse))
{
?>
<?php echo stripslashes ($donnees['titre']); ?>
<?php $image = $donnees['image']; echo "<img src='$image'/>";?>
<a class="link1" href="<?php echo stripslashes ($donnees['url']); ?>" target="_parent"><?php echo stripslashes ($donnees['url']); ?></a>
<?php echo $donnees['description']; ?>
<?php
}
mysql_close();
?>
<?php
mysql_connect("serveur", "loggin", "password");
mysql_select_db("carairfreurolo");
$reponse = mysql_query('SELECT * FROM com WHERE comA="'.$com.'"');
while($donnees = mysql_fetch_array($reponse))
{
?>
<a href="<?php echo stripslashes ($donnees['url']); ?>" class="link1" title="commentez ce partenaire"><?php echo stripslashes ($donnees['nom']); ?></a>
<?php echo $donnees['contenu']; ?>
<?php
}
mysql_close();
?>
ce qui fait le liens avec les deux bases c'est $com = $_GET['comA'];