Laravel 9:授权后能否传递单篇文章ID用于两个表单提交?
可以使用同一个文章ID传递给两个表单
当然可以,完全没问题。你只需要在授权完成后把当前点击的文章ID存储起来,再分别传递给两个表单即可,常见的实现方式有以下几种:
隐藏域存储:在两个表单里分别添加一个
type="hidden"的输入框,授权后把文章ID赋值给这两个隐藏域的value属性。提交表单时,ID会和其他表单数据一起发送到后端。
示例代码:<!-- 表单1 --> <form action="/api/table1" method="POST"> <input type="hidden" name="article_id" id="articleId1"> <!-- 其他表单字段 --> <button type="submit">提交表单1</button> </form> <!-- 表单2 --> <form action="/api/table2" method="PUT"> <input type="hidden" name="article_id" id="articleId2"> <!-- 其他表单字段 --> <button type="submit">提交表单2</button> </form> <script> // 假设授权完成后拿到的文章ID是currentArticleId const currentArticleId = 5; // 示例ID document.getElementById('articleId1').value = currentArticleId; document.getElementById('articleId2').value = currentArticleId; </script>URL参数传递:如果你的表单提交是基于当前页面URL的,可以把文章ID作为URL参数(比如
?article_id=5),后端在处理表单请求时直接从URL中获取ID。这种方式不需要在表单里加隐藏域,后端自行解析即可。状态管理工具(单页应用场景):如果是Vue、React这类单页应用,授权后可以把文章ID存入状态管理工具(如Vuex、Redux)或者组件的状态中,渲染表单时直接从状态中取出ID,绑定到表单的对应字段上。
需要注意的是,不管用哪种方式,确保文章ID在授权完成后能正确获取并传递,后端要做好参数校验,避免非法ID的提交。
内容的提问来源于stack exchange,提问作者user10927970
相关产品推荐
相关产品推荐

