为了账号安全,请及时绑定邮箱和手机立即绑定

计算点数并将结果保存在用户配置文件数据库中

计算点数并将结果保存在用户配置文件数据库中

PHP
慕尼黑5688855 2021-07-06 21:02:45
所以我有一个表单,其中包含类型自由字段(文本)、多项选择(复选框)、单项选择(收音机)的问题。我检查了按钮的值,并为每个用户保存在数据库中,但我想要做的是像这样更改这个值:data-point "2" = 10 points,                                                                                                                          data-point "3" = 7 points,                                                                                                                          data-point "4" = 4 points,                                                                                                                         data-point "5" = 2 points,                                                                                                                         然后使用这些值我必须进行计算并根据结果定义配置文件..我该怎么做?SQL 请求?在循环?欢迎提供一点帮助..这里是我的小枝在子问题上循环。<div class=" col-6 d-flex">     <div class="label-div1">           <label for="subscale{{subQuestion.id}}for{{i}}>              <img src="{{asset('images/survey/humeur/'~ i ~'.jpg')}}">            </label>             <input type="radio" class="radio-pict" name="{{subQuestion.id}}" id="subscale{{i}}" data-point="{{i}}"value="{{i}}">         </div>在这里我的树枝在管理员上显示结果..{% if answer.question == "Sub_question_choice" or      answer.question == "Sub_question_scale" or      answer.question == "Sub_question_free" %}{% if answer == "choice" %} {% for choice in answer.choices %}<p>{{choice.name}}</p>{% endfor %}{% elseif answer == "free" %}<p>{{answer.freeAswere}}</p> {% elseif answer == "scale" %}<p> {{answer.scale}}</p>{% endif %}
查看完整描述

1 回答

?
哆啦的时光机

TA贡献1779条经验 获得超6个赞

所以首先,在 Symfony 中,控制器总是需要发回响应。即使它只是一个重定向或 JsonResponse。所以你不应该在你的控制器中使用 exit 。


您应该使用 Symfony 表单,但是如果您是 Symfony 的新手,我可以理解这并不容易。


在这里为您提供帮助,您有多种选择:


您可以在控制器的 swith 语句中使用某些条件更改值

您可以在服务中将其分开,在文档的 Symfony 中查找服务。并在您的控制器中使用依赖注入,如下所示:

Service : 

    public function conversion(){

    //Some conditions

    }

controller: 

    public function saveAnswer(Request $request, YourService $service)

并在内部将其用作函数。


(更简单的选项)您可以在您的实体中重载您的 setter(例如,Answer.php):

public function yourSetter(...){

//do some conditions and after set your variables depending on result

}

希望对你有帮助,有需要的可以追问!


查看完整回答
反对 回复 2021-07-09
  • 1 回答
  • 0 关注
  • 160 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信