2011-06-26 7 views
0

Mon Vue: -comment passer une variable de vue au contrôleur dans codeigniter?

<html> 
<?= link_tag(base_url().'css/simple.css'); ?> 
<body> 
<?php $this->load->helper('form'); ?> 
<?php $this->load->view('commentform'); ?> 
<?php $id=$this->uri->segment(3);?> 
<?php echo $id;?> 
</body> 
</html> 

je voudrais utiliser la $id variable dans mon controller.I'm en utilisant CodeIgniter en passant, et je suis un débutant. J'apprécierais toute aide à ce sujet.

Répondre

0

Eh bien, idéalement, vous ne le feriez pas de cette façon. Vous devez d'abord affecter la variable au contrôleur et la passer à la vue si vous devez l'utiliser.

$data['id'] = $this->uri->segment(3); 
$this->load->view('view_file', $data); 

$ id serait alors également disponible dans votre vue.

+0

En fait, je voudrais récupérer le segment uri de la page vue, afin qu'il puisse être transmis au modèle via le contrôleur. si je le fais à votre façon, je serai en mesure de récupérer seulement le segment de l'uri du contrôleur droit? excusez-moi si je me trompe. –

+0

Le nom de la classe du contrôleur et le nom de la fonction sont ce qui définit l'URL. Par exemple, si votre contrôleur s'appelle 'mycontroller' et que votre fonction s'appelle 'myfunction', alors l'URL sera votredomaine.com/mycontroller/myfunction/ - le segment trois dans ce cas sera un paramètre sur 'myfunction'. Jetez un oeil à cela pour plus d'informations: http://codeigniter.com/user_guide/general/controllers.html –

+0

okay.thank vous beaucoup, je l'ai maintenant. –

1

vous ne devriez pas appeler le $ id de la vue, vous devriez l'obtenir au niveau du contrôleur et le passer à la vue.

en tant que Bulk dit. vous URL sera quelque chose comme ça www.mysite.com/thecontrollername/thefunction/id~~V~~singular~~3rd

par exemple votre contrôleur si la maison et il y a une fonction dans show_id et votre point de vue est d'appeler show_id_view.php.

vous aurez votre URL comme ceci: www.mysite.com/home/show_id/id~~V~~3rd

votre fonction dans la maison va lire l'id »

dans votre contrôleur à domicile:

function show_id(){ 
$id=$this->uri->segment(3); 
$view_data['id'] = $id; 
$this->load->view('show_id_view',$view_data); 
} 

dans la vue (show_id_view):

<?php echo $id ?> 

rien d'autre ..

espérons que cela aide.

0

à mon avis j'ajouter un lien

<li><a href="<?php echo base_url()?>link/show_id/mantap"> coba </li> 

dans mon link.php controleur i ajouter la fonction show_id

function show_id(){ 
     $id=$this->uri->segment(3); 
     $data['coba'] = $id; 
     $this->mobile->view('**daftarmember_form**',$data); 

dans ma prochaine vue daftarmember_form.html

)

<?php echo $id;?> 

ils impriment Mantap,

+0

tq monsieur antony p – KEKUATAN

Questions connexes