2016-09-25 3 views
1

안녕하세요, 내 데이터베이스의 일부 테이블 행을 업데이트해야하지만 내 PHP 기능에 아무런 오류가 없으며 아무런 업데이트도이 문제를 해결하는 데 도움이되지 않습니다.OOPHP를 사용하여 Mysqli 테이블을 업데이트하는 방법

내 표는 USER_ACCOUNT 전화를 다른 테이블, 계정의 FK, 주소

이 클래스를 지원하는 모든 기능을이다 다음 열, ID, USER_ID있다. Dbhandler.php

public function create_account($user_id, $account, $address) { 


    $stmt = $this->conn->prepare("UPDATE user_account set account= ?, address= ? where user_id = ? "); 

     $stmt->bind_param("iss", $user_id, $account, $address); 

     $stmt->execute(); 

    } 



**This file calls create_account function when i submit** 

<?php 

include './DbHandler.php'; 
$db = new DbHandler(); 


$response = array(); 

if ( isset($_POST['user_id']) && (isset($_POST['account']) &&  isset($_POST['address']) )!= '') { 


    $user_id = $_POST['user_id']; 
    $account = $_POST['account']; 
    $address = $_POST['address']; 



    $res = $db->createProfile($user_id, $account, $address); 

} 

?> 
+0

$ db-> createProfile 대신 $ db-> createAccount가되어야한다고 생각합니다. 응답을위한 두 개의 변수가 있습니다 : $ response 및 $ res, 하나만 사용하십시오 –

+0

예, $ db-> createProfile을 $ db-> createAccount로 변경하고 $ res를 $ response로 변경했지만 변경하지 마십시오 –

+0

우리에게 보여줄 수 있습니까? 출력 오류를 제발? –

답변

0

SQL 문은 업데이트되었지만 삽입을 사용해야합니다. 함수가 createProfile/create_account라고 불리는 이후 행이 테이블에 존재하지 않는다고 가정합니다.

Insert into user_account values() 
+0

아니요, 제 행 존재 이유는 내가 그것을 업데이 트 해야하는 이유입니다, user_id은 7입니다, 계정에 23435, 주소에 키 갈리가 있습니다 –

+0

마침내 왜, 나는 어디에서든지 내가 user_id id Dbhandler.php와 create_account를 호출하는 파일에서 $ stmt = $ this-> conn-> prepare ("UPDATE user_account set account =?, address =? where user_id =?"); 나는 이것이 어디에 user_id =가되기를 희망 하는가? 나는 그 문제를 일으켰다. 이제 문제는 업데이트가 모든 행에 영향을 미치지 만 업데이트가 마지막으로 삽입 된 행에 영향을 미친다는 것입니다. –

+0

그렇게하면 해당 테이블의 모든 레코드가 업데이트됩니다. –

관련 문제