MySql : récupérer l'ID d'une page
Résolu
santaiide
-
dariumis Messages postés 571 Date d'inscription Statut Membre Dernière intervention -
dariumis Messages postés 571 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je ne sais pas trop comment expliquer dans le titre... bon.
Je suis en train de créer un système d'articles/coms sur mon site :
1 page où les derniers articles sont affichés (OK)
1 page où s'affiche l'article demandé et ses commentaires.
Le lien entre mes pages fonctionne donc grâce l'ID de l'article en question :
<a href="commentaires.php?article=<?php echo $donnees1['ID']; ?>">Lire l'article</a>
Par contre, au moment de récupérer cet ID sur la nouvelle page (commentaires.php), je bloque !
> Tout fonctionne au niveau connection/affichage du contenu de ma table si je ne mets pas WHERE dans la requete.
> Plus d'affichage (mais pas de rapport d'erreur), lorsque je demande, dans la requête, de sélectionner la ligne où l'ID correspond à celui de l'article :
$requete = 'SELECT ID, titre, content, auteur, DATE_FORMAT(date, \'%d/%m/%Y à %Hh%i\') AS date_fr FROM articles WHERE ID = ?';
Forcément, je débute en MySQL, et je ne sais pas comment s'appelle ce point d'interrogation pour googler...
MErci d'avance pour vos coups de main !!
Je ne sais pas trop comment expliquer dans le titre... bon.
Je suis en train de créer un système d'articles/coms sur mon site :
1 page où les derniers articles sont affichés (OK)
1 page où s'affiche l'article demandé et ses commentaires.
Le lien entre mes pages fonctionne donc grâce l'ID de l'article en question :
<a href="commentaires.php?article=<?php echo $donnees1['ID']; ?>">Lire l'article</a>
Par contre, au moment de récupérer cet ID sur la nouvelle page (commentaires.php), je bloque !
> Tout fonctionne au niveau connection/affichage du contenu de ma table si je ne mets pas WHERE dans la requete.
> Plus d'affichage (mais pas de rapport d'erreur), lorsque je demande, dans la requête, de sélectionner la ligne où l'ID correspond à celui de l'article :
$requete = 'SELECT ID, titre, content, auteur, DATE_FORMAT(date, \'%d/%m/%Y à %Hh%i\') AS date_fr FROM articles WHERE ID = ?';
Forcément, je débute en MySQL, et je ne sais pas comment s'appelle ce point d'interrogation pour googler...
MErci d'avance pour vos coups de main !!
A voir également:
- MySql : récupérer l'ID d'une page
- Mysql community server - Télécharger - Bases de données
- Could not connect to mysql! please check your database settings! - Forum Redhat
- Mysql error 1 ✓ - Forum Réseaux sociaux
- Phpmyadmin a tenté de se connecter au serveur mysql, et le serveur a rejeté la connexion. merci de vérifier les valeurs de host, username et password dans la configuration et de s'assurer qu'elles correspondent aux informations fournies par l'administrateur du serveur mysql. ✓ - Forum PHP
- Access vs mysql - Forum Webmastering
2 réponses
Salut, dans ta page commentaires.php tu récupère l'id dans un isset:
Puis dans le where de ta requête tu écrit la variable:
if(isset ($_GET['article'])) { $article=$_GET['article']; }else { $article=-1; }
Puis dans le where de ta requête tu écrit la variable:
$requete = 'SELECT ID, titre, content, auteur, DATE_FORMAT(date, \'%d/%m/%Y à %Hh%i\') AS date_fr FROM articles WHERE ID ='.$article ;
J'ai, pour chaque affichage des commentaires, utilisé , mais c'est que pour l'affichage de code html, c'est ça?
Comment ça se passe pour bloquer le sql?
ha oui c'est vrai: alors peut etre ça:
Mais j'me demande s'il n'y a pas une fonction plus adéquat??
Edit: mais le champ id doit etre un integer, y a t'il dans ce cas là aussi risque d'injection???