Aide Phpmyadmin

Fermé
daxter56 Messages postés 7 Date d'inscription mercredi 26 décembre 2007 Statut Membre Dernière intervention 25 mars 2011 - Modifié par daxter56 le 25/03/2011 à 14:17
daxter56 Messages postés 7 Date d'inscription mercredi 26 décembre 2007 Statut Membre Dernière intervention 25 mars 2011 - 25 mars 2011 à 14:31
Bonjour,

J'ai crée un système sur mon site permettant de poster des critiques sur des films avec des notes etc... Toutes les données sont donc récolté grave un base de donnée mysql
Sauf que je ne comprend pas pourquoi mais :
=> Ma table se vide peut à peu : c'est-à-dire que quand des gens postes des critiques ca fonctionne mais plusieurs jour plus tard elles se suppriment toutes seules de la base !

Qu'es ce qui pourrait en être la cause ?

ps :
- ma base enregistre bien les données, ma primary est bien un champ id qui s'auto-incrémente, le type est MyISSAM
- Je ne sais pas si c'est être plus clair que de dire que les "Records" de ma table dans phpmyadmin se réduisent ..
- phpmyadmin ne suprime pas par ordre d'id ... par exemple avant j'avais les id 22/23/24/25/.../46 et maintenant j'ai 23/24/../28/30/... ( les points signifiant la continuité ici... )

Merci d'avance pour votre aide,
Agwilh.

3 réponses

boly38 Messages postés 267 Date d'inscription mercredi 23 février 2011 Statut Membre Dernière intervention 29 septembre 2016 80
25 mars 2011 à 14:17
La bdd est-elle gérée par un hébergeur ?
Après "réduction" des données, les "id" (auto-increment) continuent à augmenter ou bien sont-il repassés par le 0 ?

Deux pistes peuvent être explorées :
- a) tracer toutes les requêtes effectuées par le site dans un fichier de traces côté serveur pour diagnostiquer le problème (voir si des DELETE ou TRUNCATE sont présents..)
- b) vérifier que toutes les saisies des utilisateurs soient bien protégées contre les "injections sql" (en php, on peut utiliser mysql_real_escape_string par exemple)
0
daxter56 Messages postés 7 Date d'inscription mercredi 26 décembre 2007 Statut Membre Dernière intervention 25 mars 2011
25 mars 2011 à 14:21
non le nombre Id continue d'augmenté et ne revient jamais en arrière par contre chose étrange dans phpmyadmin ils ne sont pas forcement bien classé (enfin la je viens d'appuyer sur "id" donc ils le sont mais il ne ce sont pas classé tout seul par id...

gérée par un hébergeur cela veut dire ? Oui le site est en ligne et je suis héberger chez hostoi.com...

a- Comment tracer toutes les requêtes effectuées ?
b- Cela veut dire que une personne étrangère viendrais suprimé mes données ? c'est un tout petit site familial je doute... mais je n'utilise pas mysql_real_escape_string, je vais de ce pas voir comment m'en servir !
0
boly38 Messages postés 267 Date d'inscription mercredi 23 février 2011 Statut Membre Dernière intervention 29 septembre 2016 80
25 mars 2011 à 14:28
>ils ne sont pas forcement bien classé
s'il n'y a pas d'"order by" dans la requête SQL c'est normal.

>gérée par un hébergeur cela veut dire ?
Certains hébergeur imposent un quota d'espace disque mais dans ce cas çà serait plus une erreur lors d'un nouvel insert que de la suppression sauvage de données (j'espère ! :))

>a- Comment tracer toutes les requêtes effectuées ?
à chaque requête sql avant de l'exécuter sur mysql,
faire par exemple :
file_put_contents($fichierlog, $requeteSQL, FILE_APPEND | LOCK_EX); 

ici fichierlog correspond à un emplacement et nom de fichier accessible en écriture

>b- Cela veut dire que une personne étrangère viendrais suprimé mes données ?
s'il est visible sur Internet, certains ne se gênent pas : même sur un site familial..
0
daxter56 Messages postés 7 Date d'inscription mercredi 26 décembre 2007 Statut Membre Dernière intervention 25 mars 2011
25 mars 2011 à 14:31
Donc pour être précis pour tracer les requêtes il faut que je modifier mes fichies php a chaque endroit ou je fais une requetesql je met le script la avec a la place de $fichierlog par exemple trace.txt ?
0