我正在开发一个laravel应用程序,其中一个页面显示了一个表,其中显示了有关特定帐户的信息(按accountuserid排序)。
我想在此表中添加两列,以允许用户输入 letter addressee name
& preferred addressee name
将这些字段添加到帐户。
我在数据库中做了相关的更改-添加了列 letterAddresseeName
& preferredAddresseeName
到account.account表-这两个字段仅适用于表中 typeId
字段的值为“4”(这表示他们是负责支付帐户余额的人)。
我在前端添加了几个帐户用户,并使用SQLSMS查询了数据库,我可以看到account.account表中存在这些用户(我运行了一个查询,搜索我为这些帐户添加的名称)。然而,尽管我已经在 letterAddresseeName
& preferredAddresseeName
表中的字段,这些字段在数据库中仍然为空。
我正在尝试编写更新这些字段所需的sql,但是在过去的十年左右时间里,由于没有真正使用sql,我对它有点生疏了。
在accountscontroller.php文件中,我向 AccountsController
班级:
class AccountsController extends Controller
{
use AccountsTrait;
...
public function addAddresseesToAccount(Request $request)
{
$accountId = $request->input('accountId');
$sqlArgs = [];
$addAddresseesToAccountSQL = $this->addAddresseesToAccountSQL( $accountId, $sqlArgs );
$addressees = DB::select(
$addAddresseesSQL,
$sqlArgs
);
}
...
public functionaddAddresseesToAccountSQL($accountId, &$sqlArgs, $letterAddresseeName, $preferredAddresseeName)
{
$sqlArgs['accountId'] = $accountId;
$addAddresseesSQL = "
UPDATE ACCOUNT.ACCOUNT
SET letterAddresseeName = $letterAddresseeName, preferredAddresseeName = $preferredAddresseeName
WHERE accountId = $accountId;
";
return $addAddresseesSQL;
}
}
在我添加的字段的html中,我设置了 ng-change
属性来调用此php函数:
<!--Letter Addressee Name -->
<td *ngIf="!responseData.loading" class="width-1 visible-lg-table-cell">
<input type="text" name="letterAddresseeNameTextField" ng-value= getLetterAddresseeName(responseData) ng-change = "AccountsController.addAddresseesToAccount()"><br>
</td>
<!--Preferred Addressee Name -->
<td *ngIf="!responseData.loading" class="width-1 visible-lg-table-cell">
<input type="text" name="preferredAddresseeNameTextField" ng-value = getPreferredAddresseeName(responseData) ng-change = "AccountsController.addAddresseesToAccount()" ><br>
</td>
我做错什么了?我需要通过一个Angular 函数调用php函数而不是直接调用它吗?
暂无答案!
目前还没有任何答案,快来回答吧!