|
Posté le 30/01/2007 @ 23:06 |
Petit astucien
| Bonjour à tous, voila je souhaite mettre en place sur mon site internet (en html) une base de données avec accès a un espace membre. Il existe deja plusieurs rubriques, et je souhaiterais que certaines pages ne soient accessibles qu'aux membres. Je suis chez free. Mais je ne connais pas le Php ni le MySql. J'ai simplement lu le fonctionnement et je conçois a peu près comment ça fonctionne ( base de données, champs, table...) Est-il possible en outre de créer un systeme de points pour les membres, qui débite une quantité de points selon le nombre de pages vues ou de fichiers téléchargés, et qui crédite d'autant de points que le membre en question uploade des fichiers sur le site. Voila mon challenge, j'espère avoir quelques éléments de réponse pour avancer un peut (rires). A très bientot, styx
|
|
|
|
|
|
Posté le 31/01/2007 à 20:09 |
Petit astucien
| |
|
Posté le 19/02/2007 à 23:49 |
Petit astucien
| Merci pour l'info, je vais y jeter un coup d'oeil. Pour ce qui est des "crédits" attribués aux membres, quelqu'un a une idée? Existe il déja des sites avec ce principe ? A bientot styx |
|
Posté le 21/02/2007 à 12:07 |
Astucien
| Salut, Pour ce qui est du système de crédit, ca peut etre relativement simple: - Tu utilise un script d'upload "classique", et tu le modifie pour que, au moment où il est activé, il ajoute un au champs "points" de la personne identifiée
- Tu utilise un script tout à fait classique de "download" et tu le modifie pour que le download ne soit autorisé que si le nombre de point de la personne identifiée est suffisant...
Voici deux exemples qui te permettront, je l'espères, de comprendre l'idée: On considère que la personne est identifiée par une variable de session nommée login, que la table qui contient les membres s'appelle utilisateur et qu'elle contient, entre autre, un champs login et un champs points. Lorsque le script d'upload est appelé, la première chose à faire, c'est de mettre la table à jour sous une forme proche de <? //recherche les informations sur la personne concernée $sql="select * from utilisateur where login='$_SESSION[login]'"; //effectue la requete $cherche=mysql_query($sql,$conn);/*$conn est une variable, idéalement déclarée dans un fichier à part, reprenant les informations de connections ;)*/ //récupération sous forme d'un tableau $trouve=mysql_fetch_assoc($cherche); //ajout d'un point pour l'utilisateur $trouve[points]++; //création de la requete de mise à jour $sqlmaj="update utilisateur set points=$trouve[points] where login='$_SESSION[login]'"; //et mise à jour effective mysql_query($sqlmaj,$conn); //suite du script d'upload ?> pour le download, le principe est sensiblement identique: <? //recherche des données utilisateur $sql="select * from utilisateur where login='$_SESSION[login]'"; $cherche=mysql_query($sql,$conn); $trouve=mysql_fetch_assoc($cherche); // on interdit le téléchargement si les points sont infuffisants //deux possibilités: 1 points=1 transfert if($trouve[points]==0) { echo "vous ne pouvez pas télécharger d'autres fichiers"; } //si certains fichiers demandent plus de points que d'autres, il faudra avoir une variable de session reprenant //les points nécessités par le fichiers (nommées pttel ;) ) if($trouve[points]-$_SESSION[pttel]<0) { echo "vous ne pouvez pas télécharger ce fichier (pas assez de points)"; } //évidemment, c'est l'une ou l'autre des deux solutions ;) ca continue sous la forme de else { //retrait des points //première solution $trouve[points]--; //deuxième solution $trouve[points]-=$_SESSION[pttel]; //création de la requete de mise à jour $sqlmaj="update utilisateur set points=$trouve[points] where login='$_SESSION[login]'"; //effectue la requete de mise à jour mysql_query($sqlmaj,$conn); //suite du script de download } ?> Voilou ;) |
|
Posté le 21/02/2007 à 16:58 |
Petit astucien
| koala01 a écrit :
Salut, Pour ce qui est du système de crédit, ca peut etre relativement simple: - Tu utilise un script d'upload "classique", et tu le modifie pour que, au moment où il est activé, il ajoute un au champs "points" de la personne identifiée
- Tu utilise un script tout à fait classique de "download" et tu le modifie pour que le download ne soit autorisé que si le nombre de point de la personne identifiée est suffisant...
Voici deux exemples qui te permettront, je l'espères, de comprendre l'idée: On considère que la personne est identifiée par une variable de session nommée login, que la table qui contient les membres s'appelle utilisateur et qu'elle contient, entre autre, un champs login et un champs points. Lorsque le script d'upload est appelé, la première chose à faire, c'est de mettre la table à jour sous une forme proche de //recherche les informations sur la personne concernée $sql="select * from utilisateur where login='$_SESSION[login]'"; //effectue la requete $cherche=mysql_query($sql,$conn);/*$conn est une variable, idéalement déclarée dans un fichier à part, reprenant les informations de connections ;)*/ //récupération sous forme d'un tableau $trouve=mysql_fetch_assoc($cherche); //ajout d'un point pour l'utilisateur $trouve[points]++; //création de la requete de mise à jour $sqlmaj="update utilisateur set points=$trouve[points] where login='$_SESSION[login]'"; //et mise à jour effective mysql_query($sqlmaj,$conn); //suite du script d'upload ?> pour le download, le principe est sensiblement identique: //recherche des données utilisateur $sql="select * from utilisateur where login='$_SESSION[login]'"; $cherche=mysql_query($sql,$conn); $trouve=mysql_fetch_assoc($cherche); // on interdit le téléchargement si les points sont infuffisants //deux possibilités: 1 points=1 transfert if($trouve[points]==0) { echo "vous ne pouvez pas télécharger d'autres fichiers"; } //si certains fichiers demandent plus de points que d'autres, il faudra avoir une variable de session reprenant //les points nécessités par le fichiers (nommées pttel ;) ) if($trouve[points]-$_SESSION[pttel]<0) { echo "vous ne pouvez pas télécharger ce fichier (pas assez de points)"; } //évidemment, c'est l'une ou l'autre des deux solutions ;) ca continue sous la forme de else { //retrait des points //première solution $trouve[points]--; //deuxième solution $trouve[points]-=$_SESSION[pttel]; //création de la requete de mise à jour $sqlmaj="update utilisateur set points=$trouve[points] where login='$_SESSION[login]'"; //effectue la requete de mise à jour mysql_query($sqlmaj,$conn); //suite du script de download } ?> Voilou ;)
Pas très lisible comme couleur koala |
|
Posté le 17/04/2007 à 23:52 |
Petit astucien
| Je vous remercie de tout coeur pour vos réponses !! J'espère que ca va marcher. Je vais m'y plonger (car pour l'instant je suis novice en php). Merci encore pour cela, vous êtes super cool ! Je vous tiens au courant !! |
|
Posté le 18/04/2007 à 11:43 |
| Bonjour, Je ne sais pas si c'est de l'humour cecika mais ton lien vers "apprendre à coder proprement" renvoi vers "NOT FOUND". |
|