LIVRE D'OR AVEC MYSQL / TOUT SIMPLE SANS DESIGN.

Nexto Messages postés 153 Date d'inscription dimanche 2 octobre 2005 Statut Membre Dernière intervention 27 juillet 2006 - 3 oct. 2005 à 17:51
kefah Messages postés 37 Date d'inscription jeudi 16 août 2007 Statut Membre Dernière intervention 18 août 2011 - 23 mars 2011 à 01:58
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/34077-livre-d-or-avec-mysql-tout-simple-sans-design

kefah Messages postés 37 Date d'inscription jeudi 16 août 2007 Statut Membre Dernière intervention 18 août 2011
23 mars 2011 à 01:58
Bonjour,

Je navigue en local sur mon PC, seulement j'ai ce code d'erreur !

Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'SYSTEM'@'localhost' (using password: YES) in C:\Program Files\wamp\www\livreor\db.php on line 21
Erreur de connexion: Access denied for user 'SYSTEM'@'localhost' (using password: YES)

pourtant j'ai changé le bd comme suite sachant que j'ai mis les fichiers dans un dossier "livreor" et j'ai créé une bd dans phpMyAdmin et j'ai créé la table avec le fichier sql mais ca marche pas!! voici le code :

<?php
session_start();

// *** Login et mot de passe de l'administrateur du livre d'or (pas pour MySQL !) *** //
$login_admin = 'login';
$pass_admin = 'password';
// ************************* //

//****************************************
// Page de connexion à la base de donnée.
//****************************************

// l'host, le login et le mot de passe pour se connecter à votre base de donnée.

$sql_host = 'localhost';
$sql_user = '';
$sql_pass = 'root';
$sql_base = 'livreor';

// Connexion à la base de donnée MySQL
$db = mysql_connect($sql_host,$sql_user,$sql_pass) or die ("Erreur de connexion: ".mysql_error());

// Séléction de la base de donnée
mysql_select_db($sql_base,$db) or die ("Erreur de connexion à la base: ".mysql_error());
?>

Merci de votre aide.
msoplus Messages postés 1 Date d'inscription lundi 8 janvier 2007 Statut Membre Dernière intervention 26 avril 2009
26 avril 2009 à 00:32
impec 10/10
installé en moins d'une minute

cependant j'ai modifié ceci :

le message ne se publie pas tout de suite (ne pas publier des insultes on ne sait jamais)
l'admin est prévenu par mail d'un nouveau message
l'admin en se loggant peut décider de publier ou non les nouveaux messages et toujours de supprimer les anciens !

voila voila

A++
dededede4 Messages postés 235 Date d'inscription jeudi 23 juin 2005 Statut Membre Dernière intervention 11 septembre 2009
3 mai 2008 à 23:14
9/10 ^^
dededede4 Messages postés 235 Date d'inscription jeudi 23 juin 2005 Statut Membre Dernière intervention 11 septembre 2009
3 mai 2008 à 23:14
Tout se que je chercher =)
Utilisateur anonyme
22 mars 2007 à 10:22
Bonjour,

Je dois etre debile mais je n'arrive pas à faire fonctionner cette source. Je crois que je n'ai pas créé la base de donnée. Est ce problème là ? si oui comment le resoudre ? Voilà ce que j'affiche :
Warning: mysql_connect(): Accès refusé pour l'utilisateur: 'login mysql'@'@localhost' (mot de passe: OUI) in c:\documents\divers\site\db.php on line 21
Erreur de connexion: Accès refusé pour l'utilisateur: 'login mysql'@'@localhost' (mot de passe: OUI)

merci de votre aide
ryohazuki Messages postés 2 Date d'inscription samedi 6 janvier 2007 Statut Membre Dernière intervention 22 janvier 2007
12 mars 2007 à 21:18
c'est un maghifique il marche bien a moi trés trés bien 10/10
jgol Messages postés 4 Date d'inscription jeudi 9 mars 2006 Statut Membre Dernière intervention 4 mai 2006
4 mai 2006 à 17:26
C'est fait et ca pose plus de problème.
impec !
par contre je suis toujours en "admin"
pas grave
si tu as un truc un de ses jours .....
En tout cas merci c'est bien sympa
@+
Nexto Messages postés 153 Date d'inscription dimanche 2 octobre 2005 Statut Membre Dernière intervention 27 juillet 2006 1
4 mai 2006 à 16:16
Voilà :)

Enleve une fois la ligne @mysql_close(); et voit ce qu'il dit.

Pour l'admin euh je vais voir tantôt je te tiens au courrant.

A++
jgol Messages postés 4 Date d'inscription jeudi 9 mars 2006 Statut Membre Dernière intervention 4 mai 2006
4 mai 2006 à 16:11
Tu as raison.

Je viens de l'installer sur mon site chez mon hébergeur
et tout fonctionne..... ....presque bien.
Il me marque après saisie d'un message n°2

Warning: mysql_close(): no MySQL-Link resource supplied in livredor/index.php on line 70

et quand on est passé en admin apparemment on y reste, on ne peut pas fermer l'admin.

Mais je suis content du résultat que je vais pouvoir personnaliser.
Si tu as un solution, je suiq preneur
De toute façon Merci c'est cool
@+
Nexto Messages postés 153 Date d'inscription dimanche 2 octobre 2005 Statut Membre Dernière intervention 27 juillet 2006 1
4 mai 2006 à 15:45
Bonjour, le problème du $REMOTE_ADDR viens du faite que tu test la source sur ton PC en local.

La variable $REMOTE_ADDR reprend ton ip internet et comme tu la test en local c'est normal que sa ne fonctionne pas. Si tu veut tester en local remplace la ligne

mysql_query("Insert Into livredor (id,pseudo,message,date_heure,ip) VALUES ('','$pseudo','$message','$date_heure','$ip')") or die ("Erreur insert: ".mysql_error());

par celle ci :

mysql_query("Insert Into livredor (id,pseudo,message,date_heure) VALUES ('','$pseudo','$message','$date_heure')") or die ("Erreur insert: ".mysql_error());

Le problème devrais être arrengé.

Pour ce qui est des notices (Notice: Use of undefined constant message) c'est car ton php.ini est configurer en error_reporting = E_ALL & ~E_NOTICE ce qui fait qu'il note tout, même les variables non déclarées.

Le mieux s'est d'essayer sur un hébergement Internet si tu en as un.

++
jgol Messages postés 4 Date d'inscription jeudi 9 mars 2006 Statut Membre Dernière intervention 4 mai 2006
4 mai 2006 à 15:35
Bonjour,

Ce livre d'Or semble très intéressant et correspond bien ç ce que je cherchais. Malheureusement j'ai quelques soucis.
Lorsque j'essaie d'écrire un message sur le livre d'or voila ce que je vois :
Undefined variable: REMOTE_ADDR

Cannot modify header information - headers already sent by (output started at d:\easyphp1-8\livredor\ajout.php:22) in d:\easyphp1-8\livredor\ajout.php on line 29

Qaund je retourne sur index voila ce qu'il m'écrit :
Posté par
Notice: Use of undefined constant pseudo - assumed 'pseudo' in d:\easyphp1-8\livredor\index.php on line 48
dsqf le
Notice: Use of undefined constant date_heure - assumed 'date_heure' in d:\easyphp1-8\livredor\index.php on line 48
04/05/2006 15:30

Notice: Use of undefined constant message - assumed 'message' in d:\easyphp1-8\livredor\index.php on line 51
dfsdsfqdfsq

Quelqu'un peut-il m'aider à résoudre ce problème ?

Merci
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
11 oct. 2005 à 16:45
c'est crade car le mysql_result est crade
FhX Messages postés 2350 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 18 avril 2015 3
11 oct. 2005 à 00:04
Crade peut être pas. C'est vrai que ca n'enlève qu'une ligne ! =)
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
4 oct. 2005 à 17:38
oui mais c'est plus lent et plus crade ^^
FhX Messages postés 2350 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 18 avril 2015 3
4 oct. 2005 à 17:17
Ou alors via mysql_result($query,0,'COUNT(*)');
Ca marche aussi :)
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
4 oct. 2005 à 12:37
le @mysql_close() par exemple, laisse mysql_close() sans le @ ça ne devrait pas faire d'erreur.

Pour le select cout() il faut faire comme ça :

$requete=mysql_query('SELECT COUNT(*) FROM table');
$r=mysql_fetch_row($requete);

echo 'nombre d\'enregistrements : ',$r[0];
Nexto Messages postés 153 Date d'inscription dimanche 2 octobre 2005 Statut Membre Dernière intervention 27 juillet 2006 1
4 oct. 2005 à 07:49
Voilà qui est fait, j'ai corriger ma source sur plusieurs points. Avec ta fonction "Select COUNT(*) from livredor" sa ne fonctionnais pas, il restais bloqué sur 1.

Tant qu'à la gestion des erreurs, que veux tu dire par gestion des erreurs ?

A++
Nexto Messages postés 153 Date d'inscription dimanche 2 octobre 2005 Statut Membre Dernière intervention 27 juillet 2006 1
3 oct. 2005 à 23:35
Je corrige tout sa demain. Merci ;)

A++
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
3 oct. 2005 à 23:14
Salut,

je trouve cette source inovante ;-) très sécurisée, très propre, erreurs masquées proprement, vraiment c'est bien.






(bon ok je plaisante).


Non plus sérieusement : il manque des isset pour tester l'existence des variables, les erreurs avec le @ sans gestion d'erreur c'est pas top, la connexion à mysql se ferme après avoir fait la requête et pas à la fin de la page (ça perd tout son intérêt sinon).

"mysql_num_rows(mysql_query("Select id from livredor"))" => passe plutôt par un mysql_query('SELECT COUNT(*) FROM livredor') qui sera largement plus rapide (données à récupérer via un mysql_fetch_row() ensuite).

a +
cs_Arnauti Messages postés 392 Date d'inscription mercredi 24 novembre 2004 Statut Membre Dernière intervention 26 septembre 2009
3 oct. 2005 à 21:16
Le détail est parfois important ^^ .
J'ai pas tester ni regardé le source !


A++
Nexto Messages postés 153 Date d'inscription dimanche 2 octobre 2005 Statut Membre Dernière intervention 27 juillet 2006 1
3 oct. 2005 à 17:51
Voilà j'attend vos commentaires, tous commentaire(s) est le bienvenue :))

Juste j'aurais pu mettre aussi un addslashes() sur mes variables pseudo et message avant la requête "Insert Into", enfin c'est au détail.

A++
Rejoignez-nous