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

Bibliothèques et frameworks PHP Discussion :

[PEAR] Datagrid


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Futur Membre du Club
    Inscrit en
    Février 2011
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 12
    Points : 7
    Points
    7
    Par défaut [PEAR] Datagrid
    salut,

    j'essaye de faire marcher datagrid depuis plusieurs jours, mais rien à faire, une erreure debile doit subsister...

    voici mon code :
    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
     
    <?
    require_once "Structures/DataGrid.php";
     
    // On met à jour la valeur du modele choisit dans la base de donnée
    $sql = sprintf("UPDATE lettre SET template = ".$template." WHERE id = ".$id ) ;
    $res =& $mdb2->exec($sql);
     
    if (PEAR::isError($res)) {die($mdb2->getMessage());}
     
    // Lecture de la BD
    $datagrid =& new Structures_DataGrid(10);
    $sql = "SELECT * FROM informations WHERE id_lettre =".$id;
    $test = $datagrid->bind($sql, array('dsn' => $dsn));
     
    // Création du tableau que l'on va afficher
     
    $datagrid->addColumn(new Structures_DataGrid_Column('Num','numero'));
    $datagrid->addColumn(new Structures_DataGrid_Column('img','img','img'));
    $datagrid->addColumn(new Structures_DataGrid_Column('txt','txt','txt'));
     
    // Affichage des erreures
    if (PEAR::isError($test)) {
        echo $test->getMessage(); 
    }
     
    // On envoie à Smarty
    $test = $datagrid->fill($smarty);
    $body = $smarty->fetch('communs/tableauList.tpl');
    $smarty->clear_all_assign();
    $smarty->assign('body', $body);
     
    // Affichage
    $smarty->display('index.tpl');
    echo "test";
     
    ?>
    et voici la réponse :

    Unable to determine the data source type. You may want to explicitly specify it.
    Fatal error: Call to undefined method: structures_datagrid->fill() in /homez.98/mediatik/www/yann/newsletter_V2/lettre/etape1.php on line 27


    qué sé passe til ?

  2. #2
    Membre expert
    Avatar de Golgotha
    Homme Profil pro
    Full-stack Web Developer
    Inscrit en
    Août 2007
    Messages
    1 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Full-stack Web Developer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2007
    Messages : 1 386
    Points : 3 531
    Points
    3 531
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    Essaye de mettre des balise CODE sur ton code source stp

    as tu vérifié que la version de la librairie contient bien la méthode :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    structures_datagrid->fill()
    Consultant et développeur full-stack spécialiste du Web
    faq jQuery - règles du forum - faqs web

  3. #3
    Futur Membre du Club
    Inscrit en
    Février 2011
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    bon j'ai ajouté directement sur mon serveur un DataGrid.php pour etre sur d'avoir la derniere version.

    Voila maintenant j'ai une autre erreure :

    Unknown DataSource driver. Please specify an existing driver.

    Je cherche je cherche...

  4. #4
    Membre expert
    Avatar de Golgotha
    Homme Profil pro
    Full-stack Web Developer
    Inscrit en
    Août 2007
    Messages
    1 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Full-stack Web Developer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2007
    Messages : 1 386
    Points : 3 531
    Points
    3 531
    Billets dans le blog
    1
    Par défaut
    ça viens probablement d'un driver de connexion à ta base de donnée.

    Peux tu localiser la ligne ou tu charge ta base de donnée et la poster ici ?

    Peut être des infos sur ton problème sur ce post
    Consultant et développeur full-stack spécialiste du Web
    faq jQuery - règles du forum - faqs web

  5. #5
    Futur Membre du Club
    Inscrit en
    Février 2011
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    ouaip, j'ai deja vu ce post et ca n'a pas apporté solution à mon probleme

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $sql = "SELECT * FROM informations WHERE id_lettre =".$id;
    $test = $datagrid->bind($sql, array('dsn' => $dsn));

  6. #6
    Membre expert
    Avatar de Golgotha
    Homme Profil pro
    Full-stack Web Developer
    Inscrit en
    Août 2007
    Messages
    1 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Full-stack Web Developer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2007
    Messages : 1 386
    Points : 3 531
    Points
    3 531
    Billets dans le blog
    1
    Par défaut
    dans l'exemple c'est fait de cette façon :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $options['dsn'] = 'mysql://username@localhost/mydatabase';
    $datagrid->bind("SELECT * FROM mytable", $options);
    à quoi correspond ta variable dsn ?
    Consultant et développeur full-stack spécialiste du Web
    faq jQuery - règles du forum - faqs web

  7. #7
    Futur Membre du Club
    Inscrit en
    Février 2011
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    la variable dsn correspond à 'mysql://username@localhost/mydatabase'

    j'ai réadapté le code pour faire de cette façon, mais le probleme reste le meme

Discussions similaires

  1. [PEAR][Datagrid]Mise en forme contenu tableau HTML
    Par goldkey dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 03/09/2010, 09h35
  2. [PEAR][DB][Datagrid] créer des sous-totaux dans un datagrid
    Par Garra dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 17/10/2008, 15h46
  3. [PEAR][DB][Datagrid] Impossible de trier
    Par bilou972 dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 25/05/2008, 17h47
  4. [PEAR][DB][Datagrid et Session] Session et variables inexistantes.
    Par bilou972 dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 23/05/2008, 15h45
  5. [PEAR][DB] Un Datagrid en PHP ?
    Par MiJack dans le forum Bibliothèques et frameworks
    Réponses: 8
    Dernier message: 11/04/2008, 14h54

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