Livre d'or avec notation

Résolu/Fermé
Valentin_ Messages postés 92 Date d'inscription samedi 10 mars 2007 Statut Membre Dernière intervention 23 novembre 2022 - 31 mai 2007 à 19:16
 ~~KacY~~ - 3 août 2008 à 14:12
Bonjour,
Je voudrais pour mon site web mettre un livre d'or avec un système de notation, soit avec symboles, soit avec chiffres. (bien sur, il y aurait un calcul de la moyenne des notes
D'avance merci !

13 réponses

pkjmr Messages postés 178 Date d'inscription mercredi 30 mai 2007 Statut Membre Dernière intervention 21 février 2011 33
5 juin 2007 à 20:00
Toutes ces opérations sont à faire dans PHPMyAdmin (la zone d'administration de MySQL). C'est dans easyphp-->Administration-->GestionBDD

Et là :

créer une base : rien à dire tu tapes un nom dans le champ 'créer une table ' --> créer et c'est fait. (ici c'est coursphp)

créer une table --> soit juste après avoir créé la base, dans le champ créer une table, soit à un autre moment dans l'onglet 'opérations' (ici c'est livreor)

Après phpmyadmin te demande un nombre de champ pour ta table
dans notre cas tu mets 3 ensuite tu pourras en ajouter ou en supprimer.

Tu les nommes respectivement id, pseudo et message et tu les paramètres comme te le dit le tuto du site du zero.

Maintenant pour créer l'utilisateur sdz avec mdp 'mot_de_passe' sur le serveur 'localhost' :

dans la boite de sélection à gauche, choisis(Bases de données)
pour sortir de toute base de donnée --> Clique sur privilèges -->clique sur ajouter un utilisateur --> et remplis les bonnes infos.

Avec tout ca si c'est pas bon c'est que tu sautes une étape : renseigne-toi d'abord sur les bases de données et suis des tutos plus simples pour démarrer.

Enfin j'espère que ca t'aura aidé --> Dis-nous si t'y arrives ou pas !
1
pkjmr Messages postés 178 Date d'inscription mercredi 30 mai 2007 Statut Membre Dernière intervention 21 février 2011 33
14 juin 2007 à 20:02
Pas la peine de paniquer reste lucide. C'est une erreur d'inattention.

Warning: mysql_connect(): Accès refusé pour l'utilisateur: 'qdz'

o_O qdz au lieu de sdz


soit tu remplaces l'utilisateur qdz par sdz dans MySQL ou alors directement dans livreor.php tu remplaces sdz par qdz.

Ca devrait résoudre la majorité des erreurs si ce n'est toutes !
1
pkjmr Messages postés 178 Date d'inscription mercredi 30 mai 2007 Statut Membre Dernière intervention 21 février 2011 33
31 mai 2007 à 23:05
Sur le site du zéro il y a un tuto pour faire un livre d'or avec php.
https://openclassrooms.com/fr/courses

Une fois que t'auras fait ça, l'ajout d'un système de notation sera pour toi un jeu d'enfant...
0
Valentin_ Messages postés 92 Date d'inscription samedi 10 mars 2007 Statut Membre Dernière intervention 23 novembre 2022 6
1 juin 2007 à 17:47
L'ennui, c'est que je connais ce site et il se trouve que leur code ne fonctionne paaaaaaaaas !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
fais voir un peu ce code qui ne marche pas!
^^
0
Valentin_ Messages postés 92 Date d'inscription samedi 10 mars 2007 Statut Membre Dernière intervention 23 novembre 2022 6
1 juin 2007 à 18:16
Voici le code (comme vous l'avez comprit, je suis un peut noob et il serait gentil de m'expliquer où ça cloche, merci ) :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
   <head>
       <title>Livre d'or</title>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
        <style type="text/css">
        form, .pages
        {
            text-align:center;
        }
        </style>
    </head>
   
    <body>

    <form method="post" action="livreor.php">
    <p>Mon site vous plaît ? Laissez-moi un message !</p>
   
    <p>
        Pseudo : <input name="pseudo" /><br />
        Message :<br />
        <textarea name="message" rows="8" cols="35"></textarea> <br />
        <input type="submit" value="Envoyer" />
    </p>
    </form>

<p class="pages">
<?php
mysql_connect("localhost", "sdz", "mot_de_passe");
mysql_select_db("coursphp");

// --------------- Etape 1 -----------------
// Si un message est envoyé, on l'enregistre
// -----------------------------------------

if (isset($_POST['pseudo']) AND isset($_POST['message']))
{
   
    $pseudo = htmlentities($_POST['pseudo'], ENT_QUOTES); // On utilise htmlentities par mesure de sécurité
       
    $message = htmlentities($_POST['message'], ENT_QUOTES); // De même pour le message
    $message = nl2br($message); // Pour le message, comme on utilise un textarea, il faut remplacer les Entrées par des <br />
   
    // On peut enfin enregistrer :o)
    mysql_query("INSERT INTO livreor VALUES('', '" . $pseudo . "', '" . $message . "')");
}

// --------------- Etape 2 -----------------
// On écrit les liens vers chacune des pages
// -----------------------------------------

// On met dans une variable le nombre de messages qu'on veut par page
$nombreDeMessagesParPage = 20; // Essayez de changer ce nombre pour voir :o)

// On récupère le nombre total de messages
$retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM livreor');
$donnees = mysql_fetch_array($retour);
$totalDesMessages = $donnees['nb_messages'];

// On calcule le nombre de pages à créer
$nombreDePages  = ceil($totalDesMessages / $nombreDeMessagesParPage);

// Puis on fait une boucle pour écrire les liens vers chacune des pages
echo 'Page : ';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
    echo '<a href="livreor.php?page=' . $i . '">' . $i . '</a> ';
}

?>

</p>

<?php
// --------------- Etape 3 ---------------
// Maintenant, on va afficher les messages
// ---------------------------------------

if (isset($_GET['page']))
{
    $page = $_GET['page']; // On récupère le numéro de la page indiqué dans l'adresse (livreor.php?page=4)
}
else // La variable n'existe pas, c'est la première fois qu'on charge la page
{
    $page = 1; // On se met sur la page 1 (par défaut)
}

// On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL
$premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;

$reponse = mysql_query('SELECT * FROM livreor ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);

while ($donnees = mysql_fetch_array($reponse))
{
    echo '<p><strong>' . $donnees['pseudo'] . '</strong> a écrit :<br />' . $donnees['message'] . '</p>';
}

mysql_close(); // On n'oublie pas de fermer la connexion à MySQL ;o)
?>

</body>
</html>
0
pkjmr Messages postés 178 Date d'inscription mercredi 30 mai 2007 Statut Membre Dernière intervention 21 février 2011 33
1 juin 2007 à 21:16
Tiens pour la peine, je l'ai testé, et il marche sur mon ordi (en même temps pour un copier-coller du site du zéro...).

Alors dis-nous où ça foire exactement. Quelle est l'erreur que tu rencontre?

Je devrais pas avoir à dire ça, mais est-tu sûr d'avoir créé la base 'coursphp' et la table 'livreor' avec ses trois champs, et d'avoir défini le login 'sdz'/mot de passe 'mot_de_passe' sur le serveur 'localhost' ??
0
Valentin_ Messages postés 92 Date d'inscription samedi 10 mars 2007 Statut Membre Dernière intervention 23 novembre 2022 6
5 juin 2007 à 08:17
Là où j'ai du mal, c'est pour créer ce dont parlent les deux dernières lignes de ton message. (vraiment beauoup de mal ^^)
0
Valentin_ Messages postés 92 Date d'inscription samedi 10 mars 2007 Statut Membre Dernière intervention 23 novembre 2022 6
14 juin 2007 à 19:13
Cela m'affiche tout ça :

Warning: mysql_connect(): Accès refusé pour l'utilisateur: 'qdz'@'@localhost' (mot de passe: OUI) in c:\mes documents\documents\livreor.php on line 29

Warning: mysql_select_db(): Accès refusé pour l'utilisateur: 'ODBC'@'@localhost' (mot de passe: NON) in c:\mes documents\documents\livreor.php on line 30

Warning: mysql_select_db(): A link to the server could not be established in c:\mes documents\documents\livreor.php on line 30

Warning: mysql_query(): Accès refusé pour l'utilisateur: 'ODBC'@'@localhost' (mot de passe: NON) in c:\mes documents\documents\livreor.php on line 45

Warning: mysql_query(): A link to the server could not be established in c:\mes documents\documents\livreor.php on line 45

Warning: mysql_query(): Accès refusé pour l'utilisateur: 'ODBC'@'@localhost' (mot de passe: NON) in c:\mes documents\documents\livreor.php on line 56

Warning: mysql_query(): A link to the server could not be established in c:\mes documents\documents\livreor.php on line 56

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\mes documents\documents\livreor.php on line 57
Page :

Warning: mysql_query(): Accès refusé pour l'utilisateur: 'ODBC'@'@localhost' (mot de passe: NON) in c:\mes documents\documents\livreor.php on line 91

Warning: mysql_query(): A link to the server could not be established in c:\mes documents\documents\livreor.php on line 91

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\mes documents\documents\livreor.php on line 93

Warning: mysql_close(): no MySQL-Link resource supplied in c:\mes documents\documents\livreor.php on line 98
0
Valentin_ Messages postés 92 Date d'inscription samedi 10 mars 2007 Statut Membre Dernière intervention 23 novembre 2022 6
15 juin 2007 à 18:11
VOus aviez raison, il y avait un problème, maintenant, il n'y a plus que ces erreurs d'affichées :

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\mes documents\documents\html\livreor.php on line 57
Page :

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\mes documents\documents\html\livreor.php on line 93

Les lignes citées sont respectivement :
Ligne 57 :
$donnees = mysql_fetch_array($retour);


Ligne 93 :
while ($donnees = mysql_fetch_array($reponse))


Voilà, qu'ai-je fait encore comme bêtise ?
0
shenlong Messages postés 2 Date d'inscription mardi 20 mai 2008 Statut Membre Dernière intervention 20 mai 2008
20 mai 2008 à 20:58
J'ai utilisé le même script pour mon livre d'or et j'ai rencontré le même problème que toi.
Pour le régler, il te suffit de remplacer
$donnees = mysql_fetch_array($retour); par $donnees = @mysql_fetch_array($retour);
Normalement ton problème sera réglé.
0
shenlong Messages postés 2 Date d'inscription mardi 20 mai 2008 Statut Membre Dernière intervention 20 mai 2008
20 mai 2008 à 21:01
J'ai utilisé le même script pour mon livre d'or et le problème est très simple à régler. Il te suffit de faire la chose suivante :
remplace $donnees = mysql_fetch_array($retour); par $donnees = @mysql_fetch_array($retour);
Normalement ton problème devrait être résolu je pense...
0
evite les double poste stp tu peux les éditer avant 1heure le temps que quasiment personne vois ton message
0