PHP不从表单返回数据
这会让我发疯,因为这可能是我错过的,但我有一个表单,用户选择一个国家和一个联盟名称,然后返回一个搜索结果表 我遇到的问题是,如果提交了搜索表单,它将不返回任何内容,但是如果我只是正常刷新页面而不提交,它将正常工作并返回所有结果。正如您在下面看到的,它设置了$SubbagueSearch和$countrysearch变量,如果表单没有提交,并且工作正常,那么它只是在提交时没有,我似乎无法找到原因。任何帮助都会很好!谢谢 p、 我没有收到任何错误信息,只是没有返回任何内容。在表单提交后,我将变量回显到屏幕上,它们回显了正确的值,因此我知道变量设置正确PHP不从表单返回数据,php,Php,这会让我发疯,因为这可能是我错过的,但我有一个表单,用户选择一个国家和一个联盟名称,然后返回一个搜索结果表 我遇到的问题是,如果提交了搜索表单,它将不返回任何内容,但是如果我只是正常刷新页面而不提交,它将正常工作并返回所有结果。正如您在下面看到的,它设置了$SubbagueSearch和$countrysearch变量,如果表单没有提交,并且工作正常,那么它只是在提交时没有,我似乎无法找到原因。任何帮助都会很好!谢谢 p、 我没有收到任何错误信息,只是没有返回任何内容。在表单提交后,我将变量回显
<form action="" method="post" autocomplete="off">
<table id="searchsubleaguetable" width="670px" align="left" cellpadding="1" cellspacing="0">
<tr colspan="2">
<th colspan="2" align="left"><label>SEARCH SUBLEAGUES</th>
</tr>
<tr>
<td align="right"><label>COUNTRY </td>
<td align="left"><SELECT NAME="country" style="font-size:12px; padding:4px;"><OPTION VALUE="0">All Countries<?php echo $options;?></option></SELECT></label></td>
</tr>
<tr>
<td align="right"><label>SEARCH </td>
<td align="left"><input class="searchinputs" type="text" name="subleaguesearch" size="40" value=""></label></td>
</tr>
<tr width="100%" height="20px" colspan="2">
<td align="right"><label></td>
<td align="left"><input class="searchbutton" type="submit" value="Search" name="searchsubnow"></label></td>
</tr>
</table>
</form>
if (isset($_POST['searchsubnow'])){
$subleaguesearch = mysql_real_escape_string($_POST['country']);
$countrysearch = mysql_real_escape_string($_POST['subleaguesearch']);
if($countrysearch == 0){
$countrysearch = "%%";
}
}else{
$subleaguesearch = "";
$countrysearch = "%%";
}
$rowsPerPage = 15;
$pageNum = 1;
if(isset($_GET['page'])){
$chosenpage = mysql_real_escape_string($_GET['page']);
$pageNum = $chosenpage;
}
$offset = ($pageNum - 1) * $rowsPerPage;
$result = mysql_query(" SELECT s.league_id, s.leaguename, s.private, s.date, u.flag, u.firstname, u.country,
COALESCE(SUM(r.total_points),0) as totalpoints,
count(m.member_id) participants
from sub_leagues s
Left Join members_leagues m
On m.league_id = s.league_id
Left Join member_results r
On r.member_id = m.member_id
join members u
on s.admin = u.member_id
WHERE u.country LIKE '$countrysearch'
AND s.leaguename LIKE '$subleaguesearch%'
Group By s.league_id
Order By r.total_points DESC, participants DESC, s.date ASC " . " LIMIT $offset, $rowsPerPage")
or die ("<br/> Error - could not display league");
搜查分包合同
国家
所有国家
搜寻
如果(isset($_POST['searchsubnow'])){
$subbaguesearch=mysql\u real\u escape\u字符串($\u POST['country']);
$countrysearch=mysql\u real\u escape\u字符串($\u POST['subeguesearch']);
如果($countrysearch==0){
$countrysearch=“%”;
}
}否则{
$subgraguesearch=“”;
$countrysearch=“%”;
}
$rowsPerPage=15;
$pageNum=1;
如果(isset($_GET['page'])){
$chosenpage=mysql\u real\u escape\u字符串($\u GET['page']);
$pageNum=$chosenpage;
}
$offset=($pageNum-1)*$rowsPerPage;
$result=mysql\u查询(“选择s.league\u id、s.leaguename、s.private、s.date、u.flag、u.firstname、u.country、,
合并(总和(r.total_points),0)为总点,
计数(m.member_id)参与者
来自次级联赛
左加入成员联盟m
关于m.league\u id=s.league\u id
左联接成员\u结果r
在r.member\u id=m.member\u id上
加入美国
在s.admin=u.member\u id上
哪里有像“$countrysearch”这样的u.country
还有s.leaguename,比如“$Subbaguesearch%”
按s.league\U id分组
按r.total_points DESC、参与者DESC、s.date ASC排序。“限额$offset,$rowsPerPage”)
或死亡(“错误-无法显示联盟”);
想象你的问题就在这段代码中:
$subleaguesearch = mysql_real_escape_string($_POST['country']);
$countrysearch = mysql_real_escape_string($_POST['subleaguesearch']);
if($countrysearch == 0){
$countrysearch = "%%";
}
首先,您应该检查并确保$\u POST['country']和$\u POST['subbaguesearch']包含您认为它们包含的内容。如果没有,那么您很可能将表单中的字段命名为错误
其次,您似乎将错误的post字段分配给了错误的搜索变量。注意$SUBELAGUESEARCH=$\u POST['country'],而不是等于$\u POST['SUBELAGUESEARCH']。$countrysearch也是如此。所以应该是这样的:
$subleaguesearch = mysql_real_escape_string($_POST['subleaguesearch ']);
$countrysearch = mysql_real_escape_string($_POST['country']);
想象你的问题存在于以下代码中:
$subleaguesearch = mysql_real_escape_string($_POST['country']);
$countrysearch = mysql_real_escape_string($_POST['subleaguesearch']);
if($countrysearch == 0){
$countrysearch = "%%";
}
首先,您应该检查并确保$\u POST['country']和$\u POST['subbaguesearch']包含您认为它们包含的内容。如果没有,那么您很可能将表单中的字段命名为错误
其次,您似乎将错误的post字段分配给了错误的搜索变量。注意$SUBELAGUESEARCH=$\u POST['country'],而不是等于$\u POST['SUBELAGUESEARCH']。$countrysearch也是如此。所以应该是这样的:
$subleaguesearch = mysql_real_escape_string($_POST['subleaguesearch ']);
$countrysearch = mysql_real_escape_string($_POST['country']);
我们能看看表格吗?当你说刷新时,你的意思是在上一次请求中提交表单后刷新吗?你能添加HTML表单,这样我们就可以看到它们是如何结合在一起的吗?当我说刷新时,我的意思是只按正常方式加载页面,而不按表单提交。另外,可能有助于打印$\u POST数组以查看那里发生了什么。当你说刷新时,尝试点击提交后是否刷新?换句话说,作为GET变量的URL仍然在其中吗?另外,您知道您在代码中使用了$\u GET和$\u POST。我们可以查看表单吗?当你说刷新时,你的意思是在上一次请求中提交表单后刷新吗?你能添加HTML表单,这样我们就可以看到它们是如何结合在一起的吗?当我说刷新时,我的意思是只按正常方式加载页面,而不按表单提交。另外,可能有助于打印$\u POST数组以查看那里发生了什么。当你说刷新时,尝试点击提交后是否刷新?换句话说,作为GET变量的URL仍然在其中吗?你也知道你在代码中使用了$\u GET和$\u POST。啊,我的上帝,哈哈,有时候你只需要那双新鲜的眼睛就可以看到它了!。谢谢!真是浪费每个人的时间…对不起@用户969729不用担心。很高兴我能帮上忙。啊,我的天啊,哈哈,有时候你只需要那双新鲜的眼睛就可以看到它!。谢谢!真是浪费每个人的时间…对不起@用户969729不用担心。很高兴我能帮忙。