Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何以web形式向数据库发送int_Php_Mysql_Database_Forms_Web - Fatal编程技术网

Php 如何以web形式向数据库发送int

Php 如何以web形式向数据库发送int,php,mysql,database,forms,web,Php,Mysql,Database,Forms,Web,我有一个需要识别用户id的web表单。我把它设置在$user\u id=$\u GET['user\u id']我也相信我的id检索代码是正确的。我确保user\u id与我的表匹配,但我不断收到一个错误,它说user\u id是一个未识别的索引。这意味着用户id没有在标题中发送;在该代码段中同时使用GET和POST,在执行HTTP请求时一次只能发送一个,除非表单操作中包含查询字符串 我相信你可以做的是,在你的表单页面上,你在URL中设置了用户id,但是当表单发布时,你会丢失所有的查询字符串,所

我有一个需要识别用户id的web表单。我把它设置在
$user\u id=$\u GET['user\u id']我也相信我的id检索代码是正确的。我确保
user\u id
与我的表匹配,但我不断收到一个错误,它说
user\u id
是一个未识别的索引。

这意味着用户id没有在标题中发送;在该代码段中同时使用GET和POST,在执行HTTP请求时一次只能发送一个,除非表单操作中包含查询字符串

我相信你可以做的是,在你的表单页面上,你在URL中设置了用户id,但是当表单发布时,你会丢失所有的查询字符串,所以你需要这样做

<?php
    if(isset($_POST['submit'])) {
       $name = $_POST['name'];
       $keywords = $_POST['keywords'];
       $description = $_POST['description'];
       $user_id = $_GET['user_id'];


?>        


这有望解决您的问题。

您是否将用户id检索更改为POST?应该是

<form action="/post.php?user_id=123" method="POST">

如果它仍然不起作用,请检查您在哪里定义用户id以防任何打字错误。

好的,也许我能弄清楚您想指出什么。是否要获取已登录到您的网站/网页的用户的用户id,对吗?如果是,则必须使用以下代码:

$user_id = $_POST['user_id'];

这样您就可以在页面中的任何位置访问用户id。希望这能有所帮助。

请显示您的代码。我们需要您使用的查询和数据库结构。为什么您使用get作为用户id,而使用post作为其余内容?我不想将其作为文本输入,我希望它自动发送登录的用户id。您好,为什么您要通过get发送用户id?你需要在你的答案中添加一些代码,这样我们才能准确地理解你在做什么。我刚刚用我用于4个变量的代码编辑了这篇文章。我三次检查它们是否与数据库中的内容完全匹配。试试我的建议。我仍然有这个问题。如果有帮助,除了数据库中用户id的未识别索引错误外,表单的其余部分也会提交,但用户id始终为0。这一半有效。我没有任何错误,但它将我重定向到一个名为localhost/post.php?user_id=123的页面。我不希望它重定向,只是发送用户id和表单中发送的其他信息。
$_SESSION['user_id'] = $_POST['user_id'];