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

CodeIgniter PHP Discussion :

[3] Variable dans la vue


Sujet :

CodeIgniter PHP

  1. #1
    Candidat au Club
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    février 2018
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs

    Informations forums :
    Inscription : février 2018
    Messages : 3
    Points : 2
    Points
    2
    Par défaut [3] Variable dans la vue
    Bonjour, je m’intéresse depuis peu a codeigniter3.

    Je doit pour des raison professionnelle me formé pour le développement d'une application intranet.

    Ayant quelque notion en Php j'ai choisir le frameworks codeigniter pour développé mon application.

    En lisant le documentation officielle j'ai fait quelque test mais voila:

    J'ai créer un modèle avec une requête mysql toute simple que j’appelle dans mon contrôleur et que je transmet a ma vue. Le problème c'est que la variable que j’appelle dans ma vue est inconnue. Je pense que c'est certainement une nom compréhension de la documentation mais je m'en remet a vous pour l'explication.

    voici mon model :
    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
     
    <?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed');
     
    class User extends CI_Model
    {
    	protected $table = 'test';
     
    		public function Info_bd()
    		{
    		$this->load->database();
    		return $this->db->select('*')
    			   ->from($this->table)
    			   ->where('id', 1)
    			   ->get()
    			   ->result();	   
    		}
    }
    mon controleur :

    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
     
    <?php
    defined('BASEPATH') OR exit('No direct script access allowed');
     
    class Accueil extends CI_Controller 
    {
     
        public function index()  
        { 
        $this->load->model('user');
        $data = array();
        $data['testBD'] = $this->user->Info_bd();
        $this->load->view('themes/header');
        $this->load->view('Accueil',$data['testBD']);
        }
    }
    et ma vue toute simple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <?php echo $nom; ?>
    je vous remercie d'avance pour avoir prit le temps de me lire.

    Cordialement

  2. #2
    Membre éprouvé Avatar de Willy_k
    Homme Profil pro
    Développeur Web
    Inscrit en
    juin 2011
    Messages
    493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : juin 2011
    Messages : 493
    Points : 912
    Points
    912
    Par défaut
    Salut,

    ici il faut passer simplement $data, la vue contiendra les clés de data comme variable de vue... Par exemple $testBD contiendra le résultat de Info_bd()
    Le bienfait n'est jamais perdu

  3. #3
    Candidat au Club
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    février 2018
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs

    Informations forums :
    Inscription : février 2018
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    Merci pour votre réponse.

    Si j'ai bien compris la syntaxe ma requête doit me retourner toute les valeur de la table ou id = 1 et donc sous forme de tableau. J'ai déjà essayé de ne laisser que data dans le l’appelle de la vue mais sans aucun changement. Les variables sont toute inconnu dans la vue...

  4. #4
    Membre éprouvé Avatar de Willy_k
    Homme Profil pro
    Développeur Web
    Inscrit en
    juin 2011
    Messages
    493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : juin 2011
    Messages : 493
    Points : 912
    Points
    912
    Par défaut
    Avec un id unique cette requête doit vous renvoyer un tableau d'un objet, donc si vous passez que $data et non $data['testBD'] , utilisez foreach dans la vue.
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <?php foreach ($testBD as $row): ?>
      <?php echo html_escape($row->nom_colonne) ?>
    <?php endforeach; ?>
    nom_colonne à remplacer par le nom d'une colonne dans votre table.
    Le bienfait n'est jamais perdu

Discussions similaires

  1. Variable dans une vue Access (Application web access 2013)
    Par Lecachi dans le forum Macros Access
    Réponses: 2
    Dernier message: 02/04/2016, 16h37
  2. Réponses: 4
    Dernier message: 25/11/2007, 21h12
  3. mailto et variable à interpreter dans une vue
    Par gobgob dans le forum Ruby on Rails
    Réponses: 3
    Dernier message: 07/08/2007, 09h29
  4. Ecrire du texte depuis une variable dans une vue
    Par Vlad_Oliv dans le forum MFC
    Réponses: 1
    Dernier message: 09/01/2007, 17h28
  5. [Oracle 9] variable hôte dans une vue
    Par doukem dans le forum Oracle
    Réponses: 1
    Dernier message: 08/11/2006, 16h26

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