2016-05-12 3 views
0

Ich benutze Frontend angularjs und Beckend Codeignitor (3). Ich möchte Daten im Backend-Controller veröffentlichen. Aber ich kann keine Daten bekommen.Wie bekomme ich POST-Daten in codeigniter3 Controller

Hier ist meine html-

<form> 

      <fieldset class="form-group"> 
      <h3>Get data of your table</h3> 
       <label for="exampleInputPassword1">Select coloumn value</label> 
       <input type="text" class="form-control" ng-model="table.table_column" id="exampleInputPassword1" placeholder="table coloumn values"> 
       <small class="text-muted">Please enter valid data.</small> 
       </fieldset> 
       <fieldset class="form-group"> 
       <label for="exampleInputEmail1">Enter Table Name</label> 
        <input type="text" ng-model="table.table_name" class="form-control" id="exampleInputEmail1" placeholder="Enter Table Name"> 
       <small class="text-muted">Please enter valid table name.</small> 
       </fieldset> 

       <fieldset class="form-group"> 
       <label for="exampleInputPassword1">Where</label> 
       <input type="text" class="form-control" ng-model="table.table_where" id="exampleInputPassword1" placeholder="Where"> 
       <small class="text-muted">Please enter valid value</small> 
       </fieldset> 
       <fieldset class="form-group"> 
       <label for="exampleInputPassword1">Value</label> 
       <input type="text" class="form-control" ng-model="table.table_value" id="exampleInputPassword1" placeholder="Table Value"> 
       <small class="text-muted">Please enter valid value</small> 
       </fieldset> 

       <button type="submit" class="btn btn-primary" ng-click="submitForm(table)">Submit</button> 
      </form> 
    </div> 

Hier mein AngularJS Controller ist funktions-

$scope.submitForm = function(table) { 
    $http.post("http://localhost/DatabaseApp/welcome/getData/",table) 
     .success(function(response) {$scope.data = response}); 
} 

Hier mein CodeIgnitor funktions-

ist
function getData() 
{ 

     $table_column =  $this->input->post('table_column'); 
     $table_name =   $this->input->post('table_name'); 
     $table_value =  $this->input->post('table_value'); 
     $table_where =  $this->input->post('table_where'); 

    print_r($table_name); 

} 

Also, wenn jemand kann mir helfen Ich wäre dankbar. Danke vielmals.

+0

Geben Sie die Namen für die Eingänge an – praguan

Antwort

0

natürlich können Sie nicht bekommen Daten mit _POST Array $ weil Winkel http senden Datenanforderung $ als String strömte so sollten Sie verwenden:

$data = file_get_content("php//input"); 
$data = json_decode($data); 
    $table_column =  $data->table_column; 
    $table_name =   $data->table_name; 
    $table_value =  $data->table_value; 
    $table_where =  $data->table_where; 

Viel Glück

0

1) Sie sollten hinzufügen method="POST" und action="~/nameController/nameAction" in Form-Tags.

2) Geben Sie Namen für Ihre Eingaben ein.

<form method="POST" action="~/nameController/nameAction"> 
<input type="text" name="exampleInputPassword1"/> 
<!--You code here--> 

</form> 
Verwandte Themen