[php/sql] Aide enregistrement sur 2 base
Yuushi_Sato
Messages postés
104
Date d'inscription
Statut
Membre
Dernière intervention
-
Yuushi_Sato Messages postés 104 Date d'inscription Statut Membre Dernière intervention -
Yuushi_Sato Messages postés 104 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'aimerais quelque infos y'a t'il une requete pour enregistrer sur 2 base a la fois
une table 1 genre :
id int(11)
pseudo varchar (80)
email varchar (100)
une 2eme table genre:
id int(11)
idpseudo int(11)
comment longtext
date int(20)
donc comment faire pour faire l'enregistrement dans la premiere et que lorsque que le pseudo publie un commentaire l'idpseudo de la deuxieme table corresponde a l'id de la table 1
Comment faire j'ai un tres grand besoin de votre aide?
j'aimerais quelque infos y'a t'il une requete pour enregistrer sur 2 base a la fois
une table 1 genre :
id int(11)
pseudo varchar (80)
email varchar (100)
une 2eme table genre:
id int(11)
idpseudo int(11)
comment longtext
date int(20)
donc comment faire pour faire l'enregistrement dans la premiere et que lorsque que le pseudo publie un commentaire l'idpseudo de la deuxieme table corresponde a l'id de la table 1
Comment faire j'ai un tres grand besoin de votre aide?
A voir également:
- [php/sql] Aide enregistrement sur 2 base
- Supercopier 2 - Télécharger - Gestion de fichiers
- Base de registre - Guide
- Enregistrement mp3 gratuit - Télécharger - Streaming audio
- 2 ecran pc - Guide
- Faire 2 colonnes sur word - Guide
17 réponses
salut :)
si j'ai bien compris ton problème cette page devrait t'aider http://dev.mysql.com/doc/refman/5.0/fr/ansi-diff-foreign-keys.html
si j'ai bien compris ton problème cette page devrait t'aider http://dev.mysql.com/doc/refman/5.0/fr/ansi-diff-foreign-keys.html
si je fais :
est-ce juste?
le but de ceci est d'afficher pour chaque news des commentaires propres a chacune d'elles
j'utilise des fonction pour ceci pas de multi pages.
un lien commentaires quand on clic, cela affiche les news avec la possibilite dans poster un nouveaux.
en esperant que l'explication soit clair.
j'aimerais un petit coup de main la dessus.
Merci d'avance pour vos proposition
SELECT news.* FROM news LEFT JOIN news_comment ON news.id=news_comment.id WHERE news_comment.id
est-ce juste?
le but de ceci est d'afficher pour chaque news des commentaires propres a chacune d'elles
j'utilise des fonction pour ceci pas de multi pages.
un lien commentaires quand on clic, cela affiche les news avec la possibilite dans poster un nouveaux.
en esperant que l'explication soit clair.
j'aimerais un petit coup de main la dessus.
Merci d'avance pour vos proposition
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Sa marche pas j'ai essayer plein de truc.
Normalement sa doit faire par exemple:
Tu clic sur news id4 (commentaire = idnews 4) -> affichage de la news id4 + affichage commentaire de la news id4 -> en bas affichage des éléments pour poster un nouveau commentaire.
J'ai bien affichage de l'image de fond de la news, pas de commentaire associer et en bas les éléments pour poster un nouveaux commentaire.
Que dois-je faire? je but sur cette partit, j'ai essayer différentes chose sans y arriver.
Quelle serais, selon-vous, la meilleur façon d'afficher la news actuellement sélectionner + la liste des commentaires associer moi j'ai fais qu'un requête.
Normalement sa doit faire par exemple:
Tu clic sur news id4 (commentaire = idnews 4) -> affichage de la news id4 + affichage commentaire de la news id4 -> en bas affichage des éléments pour poster un nouveau commentaire.
J'ai bien affichage de l'image de fond de la news, pas de commentaire associer et en bas les éléments pour poster un nouveaux commentaire.
Que dois-je faire? je but sur cette partit, j'ai essayer différentes chose sans y arriver.
Quelle serais, selon-vous, la meilleur façon d'afficher la news actuellement sélectionner + la liste des commentaires associer moi j'ai fais qu'un requête.
je vous met le code avec les emplacement ou doit etre les requete:
Que dois-je faire pour que cela fonctionne réellement?
Aider moi je n'y arrive plus.
la requete si dessous a été testé et ne fonctionne pas $sql3 = mysql_query("SELECT * FROM news LEFT JOIN news_comment ON news.id=news_comment.id WHERE news_comment.idnews ")OR die("mysql error - listage de la news id"); le list n'affiche rien list($contenu, $auteurn, $date) = mysql_fetch_array($sql3); // On ouvre un tableau pour l'affichage echo "<table width=\"100%\" valign=\"top\">"; //affichage du logo des news echo "<tr><td><img src=\"themes/images/center1.gif\" border=\"0\" alt=\"-- News --\"/></td></tr>"; $nbCar = strlen($contenu); if($nbCar <= 150){ echo "<tr><td style=\"background-image:url('/themes/images/news_center0.gif');background-repeat:no-repeat; border:1px; width:690px; height:70px;\"> <center><font color=\"black\" style=\"font-family:Times New Roman;\"><br />".$contenu."</font></center> </td></tr> <tr><td style=\"background-image:url('/themes/images/center3.gif');background-repeat:no-repeat; width:690px; height:18px;\"> <font color=\"black\"><small><b>Publiée par : </b><i>".$auteurn."</i> <b> le : </b><i>".date("d-m-Y",$date)."</i><b> à </b><i>".date("H:i",$date)."</i></small></font></td></tr> <tr><td></td></tr>"; } else if($nbCar <= 250){ echo "<tr><td style=\"background-image:url('/themes/images/news_center1.gif');background-repeat:no-repeat; border:1px; width:690px; height:100px;\"> <center><font color=\"black\" style=\"font-family:Times New Roman;\"><br />".$contenu."</font></center> </td></tr> <tr><td style=\"background-image:url('/themes/images/center3.gif');background-repeat:no-repeat; width:690px; height:18px;\"> <font color=\"black\"><small><b>Publiée par : </b><i>".$auteurn."</i> <b> le : </b><i>".date("d-m-Y",$date)."</i><b> à </b><i>".date("H:i",$date)."</i></small></font></td></tr> <tr><td></td></tr>"; } else if($nbCar <= 450){ echo "<tr><td style=\"background-image:url('/themes/images/news_center2.gif');background-repeat:no-repeat; border:1px; width:690px; height:150px;\"> <center><font color=\"black\" style=\"font-family:Times New Roman;\"><br />".$contenu." </font></center> </td></tr> <tr><td style=\"background-image:url('/themes/images/center3.gif');background-repeat:no-repeat; width:690px; height:18px;\"> <font color=\"black\"><small><b>Publiée par : </b><i>".$auteurn."</i> <b> le : </b><i>".date("d-m-Y",$date)."</i><b> à </b><i>".date("H:i",$date)."</i></small></font></td></tr> <tr><td></td></tr>"; } else{ echo "<tr><td style=\"background-image:url('/themes/images/news_center3.gif');background-repeat:no-repeat; border:1px; width:690px; height:200px;\"> <center><font color=\"black\" style=\"font-family:Times New Roman;\"><br />".$contenu." </font></center> </td></tr> <tr><td style=\"background-image:url('/themes/images/center3.gif');background-repeat:no-repeat; width:690px; height:18px;\"> <font color=\"black\"><small><b>Publiée par : </b><i>".$auteurn."</i> <b> le : </b><i>".date("d-m-Y",$date)."</i><b> à </b><i>".date("H:i",$date)."</i></small></font></td></tr> <tr><td></td></tr>"; } ici le listage des commentaires n'affcihe rien non plus while(list($id, $contenu, $auteurn, $date, $id, $idnews, $comment, $pseudo, $cdate) = mysql_fetch_array($sql3)){ echo "<tr><td style=\"background-image:url('/themes/images/news_center1.gif');background-repeat:no-repeat; border:1px; width:690px; height:100px;\"> <center><font color=\"black\" style=\"font-family:Times New Roman;\"><br />".$comment." </font></center> </td></tr> <tr><td style=\"background-image:url('/themes/images/center3.gif');background-repeat:no-repeat; width:690px; height:18px;\"> <font color=\"black\"><small><b>Publiée par : </b><i>".$pseudo."</i> <b> le : </b><i>".date("d-m-Y",$cdate)."</i><b> à </b><i>".date("H:i",$cdate)."</i></small></font></td></tr> <tr><td></td></tr>"; }
Que dois-je faire pour que cela fonctionne réellement?
Aider moi je n'y arrive plus.
$sql3 = mysql_query("SELECT * FROM news LEFT JOIN news_comment ON news.id=news_comment.id WHERE news_comment.idnews
")OR die("mysql error - listage de la news id");
lorsqu'il y a une condition WHERE il faut que ce soit égal comparé à qq chose
par exemple WHERE A=B hors toi tu as mis WHERE news_comment.idnews sans rien derrieère, pas de égal
ensuite mets une trace d'erreur plus explicite que OR die("mysql error - listage de la news id")
")OR die("mysql error - listage de la news id");
lorsqu'il y a une condition WHERE il faut que ce soit égal comparé à qq chose
par exemple WHERE A=B hors toi tu as mis WHERE news_comment.idnews sans rien derrieère, pas de égal
ensuite mets une trace d'erreur plus explicite que OR die("mysql error - listage de la news id")
OR die("Pb de requette listage: ".mysql_error())
je sais WHERE news.id = news_comment.idnews
si news.id = 19 affichage news_comment.idnews = 19 hors news comment.id peut etre de 1 a ~ sa importe peut mais le probleme est que l'affichage ne se fais aucunement ni la partie news.id = 19 ni le commentaire associer
Alors je suis un peut perdue la dessus je ne comprend pas trop ou est le probleme la-dedans
si news.id = 19 affichage news_comment.idnews = 19 hors news comment.id peut etre de 1 a ~ sa importe peut mais le probleme est que l'affichage ne se fais aucunement ni la partie news.id = 19 ni le commentaire associer
Alors je suis un peut perdue la dessus je ne comprend pas trop ou est le probleme la-dedans
je n'ai pas le temps d'éplucher tout ton code mais:
while(list($id, $contenu, $auteurn, $date, $id, $idnews, $comment, $pseudo, $cdate) = mysql_fetch_array tu as déja deux fois la même variable $id ça doit poser problème
ensuite opur voir si ta requette trouve qq chose juste après la ligne :
$sql3 = mysql_query(........
mets echo "Nbr enregistrements trouves=" mysql_num_rows($sql3);
while(list($id, $contenu, $auteurn, $date, $id, $idnews, $comment, $pseudo, $cdate) = mysql_fetch_array tu as déja deux fois la même variable $id ça doit poser problème
ensuite opur voir si ta requette trouve qq chose juste après la ligne :
$sql3 = mysql_query(........
mets echo "Nbr enregistrements trouves=" mysql_num_rows($sql3);
j'ai utilise cette partie comme suit
$link = mysql_num_rows($sql4);
echo "nbre d'enregistrement '".$link."'";
et cela me donne 0
qu'est ce qui va pas dans mon code?
$link = mysql_num_rows($sql4);
echo "nbre d'enregistrement '".$link."'";
et cela me donne 0
qu'est ce qui va pas dans mon code?
J'ai refait mon code :
j'ai donc la partie fonction avec ceci:
mais cela m'affiche que la premiere news.
hors que id du depart est egale a 19
quel est la requete exact pour faire appel a l'id 19 ou 18 etc...
j'ai donc la partie fonction avec ceci:
function index(){ <a href=\"index.php?accueil=1&op=comment&id=" . $id . "\"><i>Commentaires</i></a> }qui fait donc appel a ceci:
function comment($id){ $sql2 = mysql_query("SELECT id, contenu, auteurn, date FROM news") OR DIE ("Probleme de requete listage: ".mysql_error()); list($id, $contenu, $auteurn, $date) = mysql_fetch_array($sql2); }
mais cela m'affiche que la premiere news.
hors que id du depart est egale a 19
quel est la requete exact pour faire appel a l'id 19 ou 18 etc...
sur post d'avant:
$link = mysql_num_rows($sql4);
un conseil dami choisit mieux tes noms de variables $link veut dire lien pour une varaible devant contenir le nombre d'enr c'est pas le top
ensuite pourquoi $sql4 alors que jusque là tu utilisait $sql3 ?
pour répondre à ta question:
$sql2 = mysql_query("SELECT id, contenu, auteurn, date FROM news") OR DIE ("Probleme de requete listage: ".mysql_error());
list($id, $contenu, $auteurn, $date) = mysql_fetch_array($sql2);
normal que tu n'ai que la derniere tu ne fait pas de boucle
pour n'avoir que celle dont l'id est passé par le lien:
$link = mysql_num_rows($sql4);
un conseil dami choisit mieux tes noms de variables $link veut dire lien pour une varaible devant contenir le nombre d'enr c'est pas le top
ensuite pourquoi $sql4 alors que jusque là tu utilisait $sql3 ?
pour répondre à ta question:
$sql2 = mysql_query("SELECT id, contenu, auteurn, date FROM news") OR DIE ("Probleme de requete listage: ".mysql_error());
list($id, $contenu, $auteurn, $date) = mysql_fetch_array($sql2);
normal que tu n'ai que la derniere tu ne fait pas de boucle
pour n'avoir que celle dont l'id est passé par le lien:
function comment($id){ $id=$_GET[id''];//recup de l'id passé par le lien $sql2 = mysql_query("SELECT id, contenu, auteurn, date FROM news WHERE id='".$id."'") OR DIE ("Probleme de requete listage: ".mysql_error()); list($id, $contenu, $auteurn, $date) = mysql_fetch_array($sql2); }
oki merci pour ton aide et tes conseils mais pour l'instant ce n'est qu'un brouillon quand ce seras au propre ce seras mieux et encore un grand merci
j'ai un autre petit souci avec le SELECT COUNT pour afficher le nombre de commentaire publier pour chaque news moi sa m'affiche le nombre de commentaire pour toutes les news
Comment faire?
Comment faire?