|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 |
|
Futur Membre du Club
![]() |
Bonjour, je souhaiterai ajouter une petite fonction sur mon site pour mon administration personnelle.
Chaque membre inscrit a le droit de supprimer ses données. Cependant, j'aimerai pour éviter tout abus, créer un fichier txt avant chaque suppression de la base de données. En clair : Un membre veut supprimer son profil, ... Je voudrais introduire sur le page de suppression un code qui agirait comme ceci 1/ créer un fichier .txt avec comme nom le pseudo ou l'ID du membre 2/ introduire dans ce fichier pseudo.txt les données lui concernant que je pourrais choisir dans mes tables 3/ sauvegarder ce fichier pseudo.txt sur mon serveur dans un dossier /suppression/ par exemple Donc pour chaque pseudo supprimé, un fichier txt. Merci pour votre aide. |
|
|
00
|
|
|
#2 |
![]() ![]() Thomas RambaudDéveloppeur Web Inscription : décembre 2007 Messages : 2 140 ![]() |
Pourquoi ne pas créer une table users_deleted_datas ?
Parce que après ton fichier txt je vois pas trop ce que tu pourras en faire, si c'est pour remettre les infos en DB autant avoir une table de secours. Lorsqu'un utilisateur a supprimé ses données, elles vont dans users_deleted_datas(id_user,data1,data2,data3,dataN). Tant qu'il n'a pas remplacé de données, il a toujours la possibilité de récupérer les dernieres. Ou sinon tu ajoutes la notion de version a la table user_deleted_datas(id_versionGUID,id_user,data1,data2....etc) afin qu'il puisse toujours récupérer d'anciennes données. Tu pourras fixer une limite, les données datant de 3 mois sont supprimées par exemple. Sinon pour ta solution bah quand le mec il supprime ses données, tu fais fwrite ou fputs comme tu veux et t'écris ca dans ton fichier.txt Tu peux générer un fichier par utilisateur. /suppression/user1/datas.txt /suppression/user2/datas.txt Du XML ca aurait été un poil plus classe |
|
00
|
|
|
#3 |
|
Futur Membre du Club
![]() |
Ce que je cherche réellement n'est pas une sauvegarde pour remettre par après ... juste une archive des données de l'utilisateur.
C'est un site que j'ai créé moi-même et je voudrais juste qu'après chaque suppression j'ai une trace de "qui s'est supprimé et quelles données ont été supprimées" Donc pour moi un fichier .txt par pseudo dans un dossier est plus simple qu'une table. |
|
|
00
|
|
|
#4 |
![]() ![]() Thomas RambaudDéveloppeur Web Inscription : décembre 2007 Messages : 2 140 ![]() |
Ok, et quel est ton problème ?
|
|
00
|
|
|
#5 |
|
Futur Membre du Club
![]() |
Mon problème c'est
Comment faire ça ? |
|
|
00
|
|
|
#6 |
![]() ![]() Thomas RambaudDéveloppeur Web Inscription : décembre 2007 Messages : 2 140 ![]() |
Bah ca dépend t'en es où, t'as fait en sorte que les utilisateurs puissent gérer leur données ? En supprimer ?
Si oui alors il faut simplement qu'avant la suppression des infos de la DB tu les écrives dans un fichier texte. |
|
00
|
|
|
#7 |
|
Futur Membre du Club
![]() |
Les membres qui veulent supprimer leurs données accèdent par un lien sur la page quit.php
De la, en cliquant sur confirmer, toutes les données dans les tables contenant l'ID du membre ou le pseudo sont supprimées. Je voudrais donc qu'il y ai une trace dans un fichier txt qui porte le nom du membre |
|
|
00
|
|
|
#8 |
![]() ![]() Thomas RambaudDéveloppeur Web Inscription : décembre 2007 Messages : 2 140 ![]() |
Euhhh, tu lis ce que j'écris un peu ?
Avant d'effectuer le DELETE dans ta base de données (la suppression des données du membre). Tu fais un SELECT * FROM donnees_membres WHERE membre_id='.$m_id; Et pour chacune de ces données tu l'écris dans un fichier /donnees/$m_id/datas.txt Tu trouveras ton bonheur dans le lien posté précedemment. |
|
00
|
|
|
#9 |
|
Futur Membre du Club
![]() |
oui oui j'ai imprimé le cours ... je vais y jeter un oeil mais je nettoie un peu le quit.php pour voir plus clair ..
|
|
|
00
|
|
|
#10 |
|
Futur Membre du Club
![]() |
avant la suppression, j'ajoute ceci dans ma page quit.php :
$sql = 'SELECT * FROM gaydate_user WHERE id = $userid'; $userid = $_SESSION['UserId']; $fp = fopen("/suppression/$userid/datas.txt", "w+"); fwrite($fp, $sql); fclose($fp); Le compte est bien supprimé mais aucun fichier .txt n'est créé dans /suppression sur mon serveur |
|
|
00
|
|
|
#11 | ||
![]() ![]() Thomas RambaudDéveloppeur Web Inscription : décembre 2007 Messages : 2 140 ![]() |
Code :
|
||
|
00
|
|
|
#12 |
|
Futur Membre du Club
![]() |
Non toujours aucun fichier dans /suppression
|
|
|
00
|
|
|
#13 | ||
![]() ![]() Thomas RambaudDéveloppeur Web Inscription : décembre 2007 Messages : 2 140 ![]() |
?
Code :
|
||
|
00
|
|
|
#14 |
|
Futur Membre du Club
![]() |
et non toujours pas
tant pis merci |
|
|
00
|
|
|
#15 |
![]() ![]() Thomas RambaudDéveloppeur Web Inscription : décembre 2007 Messages : 2 140 ![]() |
Est ce que tu as un message d'erreur ?
Sinon ca peut venir du fait qu'il trouve pas le dossier "/suppression/". Si tu es en local écrit plutot 'suppression/'.$_SESSION[...]... (sans le '/' en fait car ca représente la racine du site et sur apache il faut le configurer pour chaque site) |
|
00
|
|
|
#16 | ||
|
Futur Membre du Club
![]() |
oui j'y ai pensé et je l'ai testé mais ça ne fonctionne pas
Le compte s'efface correctement de la BDD mais aucun fichier .txt n'est créé dans le dossier suppression sur le serveur Code :
le dossier suppression est à la racine du site, la page quit.php contenant le code aussi. |
||
|
|
00
|
|
|
#17 | ||
![]() ![]() Thomas RambaudDéveloppeur Web Inscription : décembre 2007 Messages : 2 140 ![]() |
Je sais pas ce qui fait que ca marche pas mais une autre question me trotte dans la tete, tu veux juste écrire la requête SQL dans le fichier ?
Si non, il faut utiliser la fonction mysql_query('SELECT * FROM ...); et lire les résultats qu'elle renvoie dans une boucle while(condition). Exemple : Code :
|
||
|
00
|
|
|
#18 | ||
|
Futur Membre du Club
![]() |
Merci pour ton aide,
en fait il y avait beaucoup trop de requêtes je les ai donc numérotées : Code :
Au lieu des éléments contenus dans la table, que je veux reprendre, je retrouve ceci : SELECT * FROM gaydate_user WHERE id=2447 2447 étant l'ID de l'utilisateur supprimé. mais aucune autre données. Je suis nul et j'en suis désolé ;-) |
||
|
|
00
|
|
|
#19 |
![]() ![]() Thomas RambaudDéveloppeur Web Inscription : décembre 2007 Messages : 2 140 ![]() |
Lis le message que j'ai écris ci-dessus ca répond exactement à ta question.
|
|
00
|
|
|
#20 |
|
Futur Membre du Club
![]() |
Oui j'ai lu et j'ai essayé mais le problème est qu'il me met une erreur
Fatal error: Call to undefined method DB_mysqlc::fetch_array() in /home/gaydatec/www/quit.php on line 19 comme quoi il ne connait pas cette commande. J'essaie de trouver en quoi est convertie la commande sur mon site car mysql_query par exemple équivaut à $db->query chez moi... Je cherche mais merci pour le temps passé à m'aider. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com