Problème php/mysql

[Résolu]
Signaler
Messages postés
3472
Date d'inscription
lundi 16 juillet 2007
Statut
Membre
Dernière intervention
28 février 2014
-
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
-
Bonjour j'ai une page qui doit normalement m'afficher le contenu de ma table "news" mais ça ne marche pas !!!
Dans ma table "news" il y a 4 champs : "id", "titre", "contenu", "timestamp" !!!
Pour l'instant le code de ma page est :

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
   <head>
       <title>Bienvenue</title>
       <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <link rel="stylesheet" media="screen" type="text/css" title="page1style" href="design/page1style.css" />
   </head>
  
<?php
$retour = mysql_query('SELECT * FROM news ORDER BY id DESC LIMIT 0, 5');
while ($donnees = mysql_fetch_array($retour))
{
?>

   
        <?php echo $donnees['titre']; ?>
        le <?php echo date('d/m/Y à H\hi', $donnees['timestamp']); ?>
   

   
   
    <?php
    // On enlève les éventuels antislash PUIS on crée les entrées en HTML (
)
    $contenu = nl2br(stripslashes($donnees['contenu']));
    echo $contenu;
    ?>
   

<?php
}
?>
  
   </html>

Pouvez vous m'aider SVP.

 Si je peut me rendre utile demander

16 réponses

Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
42
si t'es pas connecte a mysql aussi...

cf la doc de mysql_connect, et tes parametres de connexions
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
42
"PS : Tu ne serai pas comment on fait pour supprimer une news quand on clique sur un lien ???"

pour supprimer, la requete sql c'est :
delect from `table` where ...

c'est pas automatique, faut du php deriere, genre un lien qui arrive vers une page qui contient la requete
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
42
salut
la seule description de ton erreur est "mais ça ne marche pas !!!"

serieux, j'ai pas ta bdd moi, j'ai aucun moyen de tester, et meme si je l'avais, tester me fait perdre un temps precieux... tu sais, plus tu donnes de details, mieux on peut t'aider...

la, on ne peut absolument rien faire a part te dire d'ajouter une gestion des erreurs ici :

$retour = mysql_query('SELECT * FROM news ORDER BY id DESC LIMIT 0, 5');

mettre ca par exemple :

$retour = mysql_query('SELECT * FROM news ORDER BY id DESC LIMIT 0, 5') or die(mysql_error());
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
25
Un jour, je referai un tuto sur les best coding practices en php, en tenant compte de la configuration de php.
(referai car à l'époque, GRenard en avait fait un très intéressant)/
Bossez en error_reporting à E_ALL au moins! Ca aide au moins à voir les erreurs...
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
42
grenard, oui, un grand homme, mais ca fait tres longtemps qu'il s'est desinteresse de la prog en general (enfin il en fait comme ca, quand il trouve le temps, quand il trouve un projet, mais apparement, c'est plus sa grande passion)
Messages postés
3472
Date d'inscription
lundi 16 juillet 2007
Statut
Membre
Dernière intervention
28 février 2014
36
ça n'affiche pas d'erreur, en fait ça n'affiche rien !
J'ai juste le fond d'écran cyan !!!!

 Si je peut me rendre utile demander
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
25
C'est bien ce que je disais, tu es en error_reporting(E_NONE) sans doute (0 quoi). Mets toi en E_ALL et tu verras quel est le problème.
Messages postés
3472
Date d'inscription
lundi 16 juillet 2007
Statut
Membre
Dernière intervention
28 février 2014
36
Je suis débutant, je n'ai que 13 ans et je ne sais pas de quoi tu parle peut tu préciser stp.

 Si je peut me rendre utile demander
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
25
Mets cette ligne dans ton script, au tout début :
error_reporting(E_ALL);

(c'est du php hein)
Messages postés
3472
Date d'inscription
lundi 16 juillet 2007
Statut
Membre
Dernière intervention
28 février 2014
36
ça m'affiche ça :

Warning: mysql_query() [function.mysql-query]: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) in /data/members/free/multimania/fr/p/r/o/programmeur/htdocs/news.php on line 11

Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /data/members/free/multimania/fr/p/r/o/programmeur/htdocs/news.php on line 11

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /data/members/free/multimania/fr/p/r/o/programmeur/htdocs/news.php on line 12

Voici les lignes en question :

$retour = mysql_query('SELECT * FROM news ORDER BY id DESC LIMIT 0, 5');
while ($donnees = mysql_fetch_array($retour))

 Si je peut me rendre utile demander
Messages postés
3472
Date d'inscription
lundi 16 juillet 2007
Statut
Membre
Dernière intervention
28 février 2014
36
Je suis connecté ça marche pour rentrer les données dans la base mais pour les sortir c'est autre chose.

 Si je peut me rendre utile demander
Messages postés
3472
Date d'inscription
lundi 16 juillet 2007
Statut
Membre
Dernière intervention
28 février 2014
36
merci pour ta remarque en fait je viens de m'apercevoir que j'avais oublié de metttre mysql_connect et mysql_select_db.

PS : Tu ne serai pas comment on fait pour supprimer une news quand on clique sur un lien ???

 Si je peut me rendre utile demander
Messages postés
3472
Date d'inscription
lundi 16 juillet 2007
Statut
Membre
Dernière intervention
28 février 2014
36
en gros je clique sur un lien, j'arrive dans une page contenant la requête et qui me marque la news n°... à bien été supprimé

 Si je peut me rendre utile demander
Messages postés
3472
Date d'inscription
lundi 16 juillet 2007
Statut
Membre
Dernière intervention
28 février 2014
36
peut tu me donner un exemple stp !!!

 Si je peut me rendre utile demander
Messages postés
224
Date d'inscription
mercredi 23 mai 2007
Statut
Membre
Dernière intervention
8 septembre 2014
1
salut je pense que ton probleme vient de mysql_fetch_array() il vaudrait mieux que tu utilise mysql_fetch_assoc() car array retourne un tableau avec des index numeriques :
$donnees[1]
$donnees[2]

pour avoir le nom des champs en index, il faut utiliser mysql_fetch_assoc()
qui te renverra un tableau
$donnees[id]
...
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
42
thegorgo>
"car array retourne un tableau avec des index numeriques"
=>
va lire la doc stp, array fait la jointure entre fetch_row et fetch_assoc

nicomilville> j'ai aucun exemple a te donner pour ca, t'en as plein sur le net, c'est la base du php...