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 :

fopen() ne veut pas reconnaître l'id [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 35
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2014
    Messages : 96
    Points : 59
    Points
    59
    Par défaut fopen() ne veut pas reconnaître l'id
    Bonsoir à tous,
    Voilà quelques heures que je m'arrache les cheveux avec cette fonction.
    Je désire récupérer un fichier RTF à partir de variables de ma BDD. J'ai réussi très simplement avec juste fopen() et fwrite(), jusque là, pas de problème. Le souci, c'est quand je veux créer un fichier à partir d'une ligne de ma table. Je pense que du code serra plus clair pour comprendre mon problème :
    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
     
    public static function EcrireText($id){
     
     
        $db = Bd::getInstance()->getConnexion();
         $id = (int) $_GET['id'];
        $requete ="SELECT * from maTable where id = $id";
        $reponse = $db->query($requete);
    		$data = $reponse->fetch();
    		while ($donnees = $reponse->fetch())
    			{
     
    		$fp = fopen("test4.rtf", "w");
    		fwrite($fp, $donnees['donnée1']);
    		fwrite($fp, $donnees['donnée2']);
    		fwrite($fp, $donnees['donnée3']);
    		fwrite($fp, $donnees['donnée4']);
    		fclose($fp);
     
    	}
    }
    il faut savoir qu'aucune erreur ne s'affiche, mais que l'enregistrement marche sans le where id = id, seulement, il enregistre toujours le même...
    Donc voilà, si quelqu'un peut m'aider je lui serai vraiment reconnaissante!

    Bonne nuit!

    Flora

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonsoir,

    que vous renvoie les fonctions var_dump, juste pour voir ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $id = (int) $_GET['id'];
    var_dump($id);
    $requete ="SELECT * from maTable where id = $id";
    $reponse = $db->query($requete);
    var_dump($reponse);
    Pouvez-vous essayer de cette façon ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $requete ="SELECT * from maTable where id = ".$id;

  3. #3
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 35
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2014
    Messages : 96
    Points : 59
    Points
    59
    Par défaut
    Bonjour,
    Merci de m'avoir répondue.
    Le var_dump donne ceci :
    object(PDOStatement)[3]
    public 'queryString' => string 'SELECT * from maTtable where id = 40' (length=37)
    et ça ne marche toujours pas...

  4. #4
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 35
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2014
    Messages : 96
    Points : 59
    Points
    59
    Par défaut
    J'ai trouvé la solution !

    il fallait faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $resultat = $db->query("SELECT * from maTable where id = ".$id. "");	
    		while ($donnees = $resultat->fetch())
    			{
    etc.
    Je suis contente!
    Du coup, pour ceux que ça intéresse, c'est un moyen très facile de créer des fichierrs .rtf

    Bonne journée !

    Flora

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 04/03/2005, 00h23
  2. Ma fenêtre OpenGL ne veut pas rester ouverte
    Par Mynautor dans le forum OpenGL
    Réponses: 3
    Dernier message: 03/02/2005, 14h25
  3. [HARDWARE] le lecteur CD ne veut pas s'ejecter
    Par Petogaz dans le forum Périphériques
    Réponses: 4
    Dernier message: 15/12/2004, 11h21
  4. java web start qui veut pas se lancer
    Par calvin dans le forum JWS
    Réponses: 4
    Dernier message: 30/06/2004, 12h42
  5. [Kylix] Un programme compilé ne veut pas se lancer
    Par LightBeam dans le forum EDI
    Réponses: 1
    Dernier message: 05/08/2003, 11h15

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