2017-02-16 39 views
0

我试图通过单击按钮更新我的数据库记录,但没有任何输入字段。我想有一些像静态变量。通过单击按钮更新数据库记录,无需输入

$scope.test = "test" 

我想通过点击按钮把这个“测试”到数据库。

例如:

我有一个数据库表:

Id Username State

1 Test Open

后,我点击按钮“更新”我想更新我的数据库记录 - 状态从“开放” - >“关闭“

我知道如何更新我的数据库,当我从外地输入的东西:

<input type="hidden" ng-model="update_id_user">  
<div class="input-field col s3"> 
    <input ng-model="update_username" type="text" class="validate" placeholder="Username"> 
</div> 
<div class="input-field col s3"> 
    <input ng-model="update_state" type="text" class="validate" placeholder="State"> 
</div> 
<div class="input-field col s2"> 
    <a class="waves-effect waves-light btn blue" ng-click="updateuser()"><i class="material-icons right"></i>Update</a> 
</div> 

有edituser()和update()

$scope.edituser = function(id_user) { 
$http.post('edit.php',{'id_user' : id_user } 
)  
    .success(function (data, status, headers, config) {  


     $scope.update_id_user   = data[0]["id_user"]; 
     $scope.update_username  = data[0]["username"]; 
     $scope.update_state = data[0]["state"]; 
    }) 

    .error(function(data, status, headers, config){ 

    }); 
} 

$scope.updateuser = function() { 

    $http.post('update.php', 
       { 
        'id_user'  : $scope.update_id_user, 
        'username'  : $scope.update_username, 
        'state' : $scope.update_state 
       } 
      ) 
      .success(function (data, status, headers, config) {     
       $scope.getall(); 
      }); 
} 

edit.php文件

<?php 
require 'conx.php'; 
$data = json_decode(file_get_contents("php://input"));  
$id_user = $data->id_user; 
$result = $db->query("SELECT * from test WHERE id_user='$id_user'"); 
$d = array(); 
while($r = $result->fetch_object()) 
{ 
    $d[] = array(
       "id_user" => $r->id_user, 
       "username" => $r->username, 
       "state" => $r->state 
       ); 
} 
print_r(json_encode($d)); 
return json_encode($d); 

update.php文件

<?php 
require 'conx.php'; 
$data = json_decode(file_get_contents("php://input")); 

$id_user = $data->id_user; 
$username = $data->username;  
$state = $data->state; 
$result = $db->query("UPDATE test SET username='$username' , state='$state'"); 

主要问题是如何例如用于状态设置的值在点击按钮后总是设置为“关闭”。

回答

0

你可以试试这个:

$scope.edituser = edituser; 

$scope.user = { 
    'id_user' : $scope.update_id_user 
} 

function edituser() { 
     return $http.post('/edit.php', user).then(function(response) { 
      return response.data; 
     }); 
} 
+0

而不是全功能edituser()? – Radekesd

+0

我得到了一个错误ReferenceError:没有定义id_user – Radekesd

相关问题