je suis toujours à PHP4 pour le moment. J'voudrais afficher mes articles sur une page et cliquer sur le titre pour aller sur ?id=nombre et afficher la news concernée avec $_GET
La table s'appelle news il y a id titre auteur contenu
Après avoir fini le blog en PHP4 je le ferais en PDO mais j'apprend php avec cette solution ! Merci à ceux qui m'aideront.
J'ai trouvé la solution merci pour votre aide les développeurs ;)
<?php
require 'global.php';
$bdd = mysql_connect($host,$user,$pass);
mysql_select_db($db,$bdd);
$id = intval(mysql_real_escape_string($_GET['id']));
$sql = "SELECT * FROM news WHERE id='$id'";
$req = mysql_query($sql);
while($donnees = mysql_fetch_array($req)) {
echo $donnees['titre'];
}
if(empty($_GET['id']) =="index") {
header('Location:index.php');
}
?>
Tu n'arrives pas à quoi ? Faire ta requête ? Si c'est ça tu n'es pas dans la bonne section.
Sinon pour récupérer tes news :
SELECT id, titre, auteur, contenu FROM news ORDER BY id DESC
Ensuite tu boucles en PHP avec un foreach et tu crées ton lien avec l'ID de chaque news récupéré... Rien de bien sorcier.
Pour afficher l'article complet sur ta nouvelle page, tu peux faire un :
SELECT id, titre, auteur, contenu FROM news WHERE id = $ton_id
Procédure :
<a href="article.php?id=<?= $data->id; ?>" ><?= $data->-titre; ?></a>
Peux-tu envoyer le code complet à partir de chez toi quand tu pourras pour qu'on sache quelles erreurs corriger. Merci
Hugo
J'suis sur pc voici le code :
<?php
if(isset($_GET['id'])) {
$bdd = mysql_connect($host,$user,$pass);
mysql_select_db($db,$bdd);
$sql="SELECT FROM news WHERE id={$_GET['id']}";
$req = mysql_query($sql);
while($donnees = mysql_fetch_array($req) {
}
}
?>
Le code voilà ;) Quelqu'un peut m'aider?
Donc j'veux que en tapant ?id=1 par exemple sa affiche la news 1 et quand j'vais sur index.php sa affiche tous les articles mais j'arrive pas sa donne l'erreur : Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in.
Malheureusement j'ai cherché l'erreur sur internet je comprends pas..
Salut sa marche pas :( Quelqu'un peut essayer le code chez lui avec une bdd rapide?
$sql = 'SELECT * FROM news WHERE id=\'' . intval($_GET['id']) . '\'';
il manquait les champs sélectionnés dans ta requête et je ne suis pas fan des doubles quotes pour une requête ;) (avis perso)
Vous voulez pas qu'on fasse votre site non plus. Il faut essayer de chercher quand il y a des erreurs.
Rien de méchant, mais quand je lis "j'voudrais... je veux...", c'est plus de l'exigeance que de l'aide.
sa marche mais sa fais bien 10 jours que je trouve pas la solution alors j'voudrais savoir ;)
Dans une requête SQL tu dois spécifier les champs à selectionner. Tu pourrais donc faire :
$sql = "SELECT id,title FROM news);
Hugo