IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Perte des droits sur une table ?? [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Nouveau membre du Club
    Inscrit en
    Février 2004
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 55
    Points : 28
    Points
    28
    Par défaut Perte des droits sur une table ??
    Bonjour à tous,

    mon problème est assez étrange.

    Voilà j'ai une appli qui tourne sur un serveur d'applis et qui utilise une base MySQL.

    Tout fonctionnait très bien jusqu'à aujourd'hui. En effet, maintenant je ne peus plus agir sur une table de ma base via l'appli (ni ajout, ni modif, ni suppr).

    La seule chose que j'ai faite est une copie des fichiers de la base en local sur mon serveur (j'ai bien remis les droits, et tout et tout) et l'ajout d'un bouton pour un export des données sous excel.
    De plus, je n'ai aucun souci avec les mêmes fichiers en local ou avec les autres tables.

    Si vous avez une idée d'où cela peut venir ou encore si vous avez une solution pour connaitre les droits de l'utilisateur de l'appli sur les tables de la base ça m'arrangerait.

    Merci

  2. #2
    Nouveau membre du Club
    Inscrit en
    Février 2004
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 55
    Points : 28
    Points
    28
    Par défaut
    Désolé j'avais zappé le mysqlerror() dans mon code.

    Du coup j'obtiens cette belle erreur : Lost connection to MySQL server during query.

    Pourtant je fais un simple INSERT d'une ligne dans une table (avec une 15aine de propriétés).

    Idem si je fais un UPDATE ou DELETE sur cette table. (pour les autres, en local ou non, ça marche très bien).

  3. #3
    Invité
    Invité(e)
    Par défaut
    Code?

  4. #4
    Nouveau membre du Club
    Inscrit en
    Février 2004
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 55
    Points : 28
    Points
    28
    Par défaut
    C'est la fonction nouveau() qui me renvoie l'erreur (requête INSERT)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
     
    function mise_a_jour (){
     
    if (isset( $_POST['ajour'])){
    	if ($_POST['action']=="nouveau")
    	return nouveau();
    	if ($_POST['action']=="modifier")
    	return modifier();
    	if ($_POST['action']=="supprimer")
    	return supprimer();
    	}
    }
     
    function nouveau () {
    $route="44 ".$_POST['route']."".$_POST['num_route']."";
    $prabs ="44 ".$_POST['route']."".$_POST['num_route']."".$_POST['pr']."".$_POST['distance_pr']."";
    $date = date_angl($_POST['date']);
     
    $query = "INSERT INTO accident
    (`id`,`id_user` ,`id_route` , `id_prabs` , `commune` , `date` ,
     `heure` , `route` , `num_route` , `pr` , `distance_pr` ,
      `agglo_camp` , `etat` , `type` , `gravite` , `observation` )
    VALUES ( '' ,
     '".$_SESSION['id_user']."',
     '".$route."',
     '".$prabs."',
     '".$_POST['commune']."',
     '".$date."',
     '".$_POST['heure']."',
     '".$_POST['route']."',
     '".$_POST['num_route']."',
     '".$_POST['pr']."',
     '".$_POST['distance_pr']."',
     '".$_POST['agglo_camp']."',
     '".$_POST['etat']."',
     '".$_POST['type']."',
     '".$_POST['gravite']."',
     '".$_POST['observation']."' );" ;
     
     
    $res = mysql_query($query) or die($query . " - " . mysql_error());
     
       return $res;
     
    }
     
    //Main
    connexion ();
    $succes = mise_a_jour();
    //deconnexion();
    // enregistre la requete a executé dans la variable de session req
    $_SESSION["req"]=selection();
    deconnexion();
    connexion() c'est juste un
    $connect_base= mysql_connect($host, $user, $password);
    $select_base = mysql_select_db($base, $connect_base);

    voilà

  5. #5
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 349
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 349
    Points : 1 460
    Points
    1 460
    Par défaut
    tu as essayé avec mysql_pconnect() ...
    Stay in Bed .. Save Energy

  6. #6
    Nouveau membre du Club
    Inscrit en
    Février 2004
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 55
    Points : 28
    Points
    28
    Par défaut
    Non mais en général mysql_pconnect() est plutôt déconseillé et en plus c'est une appli que je dois compléter (donc fait il y a quelque temps par un autre) donc il a fait des connexion/deconnexion un peu partout.

  7. #7
    Nouveau membre du Club
    Inscrit en
    Février 2004
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 55
    Points : 28
    Points
    28
    Par défaut
    j'ai quand même essayé et ça fait la même chose. (Ce qui m'intrigue le plus c'est le fait que ça ne fait ça qu'avec une table).

  8. #8
    Nouveau membre du Club
    Inscrit en
    Février 2004
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 55
    Points : 28
    Points
    28
    Par défaut
    ouaip j'ai essayé de faire des INSERT, UPDATE et DELETE (à la place de l'autre requête dans la fonction nouveau() ) :
    - sur d'autres tables => ça marche nickel
    - sur cette p..... de table accident => ça marche pas Lost connection ...

    Par contre les SELECT fonctionnent.

    je vois vraiment pas non plus

  9. #9
    Nouveau membre du Club
    Inscrit en
    Février 2004
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 55
    Points : 28
    Points
    28
    Par défaut
    j'ai copié la table qui pose problème et je l'ai renommée et si j'effectue ma requête sur cette "nouvelle" table => même pb ???

    Est-il possible de savoir dans l'appli quels sont les droits de l'utilisateur courant sur les différentes tables de la bdd ?

  10. #10
    Nouveau membre du Club
    Inscrit en
    Février 2004
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 55
    Points : 28
    Points
    28
    Par défaut
    Ca y est ça remarche, visiblement le pb ne venait pas de php.

    Voilà ce que j'ai fait comme "bidouille" :
    - créer une nouvelle table (testt) en local avec la même structure que accident
    - copie des données de accident dans la nouvelle table
    - copie de la nouvelle table sur le serveur
    - suppression de la table accident du serveur
    - renommer la nouvelle table (testt) en accident (en fait renommer les 3 fichiers .frm, .MYD et .MYI)
    - attribuer le propriétaire et le groupe mysql (chown et chgrp) et les droits
    - redémarrage du service mysql (service mysql restart)

    Et voilou ça marche à nouveau.

    Merci à vous

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Mettre en place des droits sur une vue différents de ceux de la table-source ?
    Par Antoun dans le forum Administration et Installation
    Réponses: 14
    Dernier message: 15/02/2010, 14h13
  2. Réponses: 2
    Dernier message: 03/03/2007, 19h03
  3. Comment avoir des informations sur une table ?
    Par Shogun dans le forum Oracle
    Réponses: 2
    Dernier message: 09/01/2007, 15h40
  4. [ASE][T-SQL]droits des user sur une table...
    Par arona dans le forum Sybase
    Réponses: 3
    Dernier message: 11/05/2006, 21h48
  5. Ordre de sélection des lignes sur une table DB2
    Par Pierre Formosa dans le forum DB2
    Réponses: 1
    Dernier message: 26/04/2006, 20h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo