Portail PHP

Forum de discussion et d'aide au php

Vous n'êtes pas identifié.

Annonce

Regles d'utilisation des forums : pensez à toujours les respecter si vous désirez obtenir des réponses rapides.
FAQ : pensez à toujours chercher dedans si la réponse à votre question est dedans.
Proposez vos news : si vous avez un evenement à annoncer
le chat : venez discuter de php.
 

#1 07-06-2005 10:32:01

virus_the_dog
Membre
Lieu: sud ouest
Date d'inscription: 17-05-2005
Messages: 33

[Résolu] problême dans code de news

bonjour,

voilà je cherche à faire une boucle pour afficher les news rentrée par un visiteur et uniquement les siennes, alors j'ais essayé de récupérer son nom d'auteur qui arrivent du fromulaire précédent, mais je suis tellement mauvais que j'ai ce vilain message qui reviens :

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in e:cuisine v2liste_news_internot.php on line 74

alors je vous montre le code, et si quelqu'un peut m'indiqur l'erreur que je fait je serais ravi.


Code:

//-----------------------------------------------------
// Vérification 1 :  poster une news ?
//-----------------------------------------------------

if (isset($_POST['titre']) AND isset($_POST['contenu']) AND isset($_POST['auteur']))
{
    $titre = addslashes($_POST['titre']);
    $contenu = addslashes($_POST['contenu']);
        $auteur = addslashes($_POST['auteur']);
    // On vérifie modification de news ou pas
    if ($_POST['id_news'] == 0)
    {
        // pas une modification, crée nouvelle entrée table
        mysql_query("INSERT INTO news VALUES('', '" . $titre . "', '" . $contenu . "', '" . $auteur . "', '" . time() . "','0')");
    }
    else
    {
        // modification, mettre à jour titre et contenu
        mysql_query("UPDATE news SET titre='" . $titre . "', contenu='" . $contenu . "', valide=0 WHERE id=" . $_POST['id_news']);
    }
}
//--------------------------------------------------------
// Vérification 2 : supprimer une news ?
//--------------------------------------------------------

if (isset($_GET['supprimer_news'])) // Si demande supprimer une news
{
    // supprime la news correspondante
    mysql_query('DELETE FROM news WHERE id=' . $_GET['supprimer_news']);
}
?>

<table><tr>
<th>auteur</th>
<th>Titre</th>
<th>contenu</th>
<th>Modifier</th>
<th>Supprimer</th>
<th>Date</th>
</tr>

<?
$retour = mysql_query("SELECT * FROM news WHERE auteur=" . $_POST['auteur']);
while ($donnees = mysql_fetch_array($retour)) // boucle pour lister news
{
?>
<tr>
<td><? echo ($donnees['auteur']); ?></td>
<td><? echo stripslashes($donnees['titre']); ?></td>
<td><? echo ($donnees['contenu']); ?></td>
<td><? echo '<a href="rediger_news_internot.php?modifier_news=' . $donnees['id'] . '">'; ?>Modifier</a></td>
<td><? echo '<a href="liste_news_internot.php?supprimer_news=' . $donnees['id'] . '">'; ?>Supprimer</a></td>
<td><? echo date('d/m/Y à Hhi', $donnees['timestamp']); ?></td>
</tr><br>

<?
} // Fin boucle qui liste les news
?>
<h5><? echo ($donnees['auteur']); ?>votre news as bien été enregistrée, vous serez prévenus de sa mise en ligne par le webmaster</h5>

</body>
</html>

merci d'avance

Hors ligne

 

#2 07-06-2005 10:44:06

palmivore
Modérateur global
Lieu: 49 - Maine et Loire
Date d'inscription: 07-04-2005
Messages: 1783
Site web

Re: [Résolu] problême dans code de news

le pbm vient certainement de ta requête. ajoute or die(mysql_error()); après ta query... Tu auras certainement + d'infos.

Hors ligne

 

#3 07-06-2005 10:59:39

virus_the_dog
Membre
Lieu: sud ouest
Date d'inscription: 17-05-2005
Messages: 33

Re: [Résolu] problême dans code de news

bien j'ai fait or die(mysql_error()) et ben pas plus
alors je cherche, mais je croit que ca viens de ma façon de rappeler le nom de l'auteur dans ma query, je cherche à le récuperer par $_POST, l'aurais je mal ortographié ????

Hors ligne

 

#4 08-06-2005 03:13:10

palmivore
Modérateur global
Lieu: 49 - Maine et Loire
Date d'inscription: 07-04-2005
Messages: 1783
Site web

Re: [Résolu] problême dans code de news

ben en fait, perso, j'évite de mettre mes variables GET et PORT dans les requêtes car elles contiennent des '
Je les passe donc dans une autre variable :

Code:

$auteur = $_POST['auteur'];
$retour = mysql_query("SELECT * FROM news WHERE auteur='$auteur'");

Hors ligne

 

#5 08-06-2005 05:37:18

kazhar
Ex-Webmaster
Lieu: Orléans
Date d'inscription: 25-06-2004
Messages: 3381
Site web

Re: [Résolu] problême dans code de news

idem dans mon cas
cependant, tu peut également tout simplement ne pas mettre de ' (ce que je te conseille fortement si tu es dans un echo ou une requete ou autre (avec des ' ou " deja ouverts)

Code:

$retour = mysql_query("SELECT * FROM news WHERE auteur='$_POST[auteur]'");

Hors ligne

 

#6 08-06-2005 06:03:59

virus_the_dog
Membre
Lieu: sud ouest
Date d'inscription: 17-05-2005
Messages: 33

Re: [Résolu] problême dans code de news

je vous remercie tous deux de vos réponses, mais je suis assez fier de moi parcequ'en cherchant bien j'ai trouvé hier soir comme un grand mon erreur, et depuis ca marche

Hors ligne

 

#7 08-06-2005 06:07:27

kazhar
Ex-Webmaster
Lieu: Orléans
Date d'inscription: 25-06-2004
Messages: 3381
Site web

Re: [Résolu] problême dans code de news

eh bah, c génial alors smile

Hors ligne

 

#8 08-06-2005 07:05:51

palmivore
Modérateur global
Lieu: 49 - Maine et Loire
Date d'inscription: 07-04-2005
Messages: 1783
Site web

Re: [Résolu] problême dans code de news

Rien de plus gratifiant que de résoudre les problèmes soit même ! smile

Hors ligne