2013-04-03 2 views
0

Je suis nouveau à ajax et CI. Je veux envoyer des données et l'image par ajax. À mon avis, j'ai 3 champs de saisie et un bouton de téléchargement d'image.envoyer des données par l'intermédiaire d'ajax au contrôleur CI

var val1 = $("#val1"+id).val(); 
var val2 = $("#val2").val(); 
$.ajax({ 
      type: "POST", 
      url: "page/save_data", 
      data: "{ val1 :'"+val1+"',val2:'"+val2+"}", 
      success: function(msg) { 

        alert(msg); 
      } 
    }); 

et dans le contrôleur lorsque je tente cela, il me montre rien

function save_data() 
{ 
    $val = $this->input->post('val1'); 
    echo $val1; 


} 

Dans la console, il ne me donne rien.

Répondre

1

Essayez ceci:

$.ajax({ 
      type: "POST", 

      url: "page/save_data", 
      data: { "val1 ":val1,"val2": val2}, 
      success: function(msg) { 
        alert(msg); 
      } 
    }); 
+0

merci mais cela n'a pas fonctionné :( – Uahmed

+0

S'il vous plaît vérifier que l'URL vous frappe et vérifiez que son bien ou non ? – Arvind

+0

arvind cela fonctionne merci beaucoup, – Uahmed

0

Votre URL ajax doit être vous référer à votre nom de la méthode;

... 
$.ajax({ 
     type: "POST", 
     url: "page/save_data", //change this to your method; 
... 

devrait ressembler à:

... 
    $.ajax({ 
     type: "POST", 
     url: "page/save_iudata",//or whatever your method's name; 
    ... 

EDIT:

essayer cette façon:

function save_data(){ 
    $val1 = $_REQUEST['val1']; 
    echo $val1; 
} 
+0

désolé c'était une erreur de frappe nom de méthode est ok – Uahmed

+0

vous avez @Arvind réponse, ne citez pas l'objet de données; – egig

+0

@ user1224233 voir ma modification; – egig

-1

Bonjour à envoyer des données via ajax est facile:

 var data = { 
      val1: $('#val1').val(), 
      val2: $('#val2').val(), 
     }; 

     $.ajax({ 
      url: "<?php echo base_url().'page/save_data'; ?>", 
      dataType: 'json', 
      type: 'POST', 
      async : false, 
      data: data, 

      success: function(msg){ 
       ... 
      } 
     }); 
     return false; 

Mais pour envoyer une image que vous avez à faire quelques recherches ... est ici un bon tutorial

Questions connexes