如何在我的URL中设置默认查询字符串?

时间:2013-08-15 15:01:40

标签: php javascript url url-rewriting web-deployment

我正在尝试构建一个webapp,它将根据用户当前的按钮选择和滑块选择过滤结果,我将通过PHP,SQL和AJAX调用实现这一点,但我需要帮助将正确的数据发送到我的URL。

DB Dip -

$pType = $_GET['s'];

$fPsiVal = '15000';
$fGpmVal = '10000';
$hPsiVal = '30000';
$hGpmVal = '10000';

$sql = "SELECT * FROM pumps 
        WHERE pump_type =  '$pType'
        AND flow_psi   <=  '$fPsiVal'
        AND flow_gpm   <=  '$fGpmVal'
        AND high_psi   <=  '$hPsiVal'
        AND high_gpm   <=  '$hGpmVal'";

我想为pType设置一个默认值?pType = CONTINUOUS而不是一个静态变量,在最初调用页面时如何将它传递给我的URL?

为了处理用户结果过滤,我创建了一个使用GET方法的表单,正如我目前所理解的那样,应该在提交时将数据发送到URL,但是没有任何反应,我不确定我做错了什么< / p>

获取表格 -

 <form name="pumpCat" action="?s=<?php echo $pType ?>" method="get" align="center">
     <div class="btn-group" data-toggle="buttons-radio">
          <button type="submit" class="<?php if( $pType == 'intermittent' ){ echo 'active '; } else echo 'noClass '; ?>btn btn-primary waitingUiBut" id="but1" name="s" value="intermittent" action="pumpCat">INTERMITTENT</button>
          <button type="submit" class="<?php if( $pType == 'continuous' ){ echo 'active '; } else echo 'noClass '; ?>btn btn-primary waitingUiBut" id="but4" name="s" value="continuous"action="pumpCat">CONTINUOUS</button>  
      </div>
 </form>

任何指针都会非常感激。

3 个答案:

答案 0 :(得分:1)

您的action="?pType="似乎正确设置了默认值 但是,按钮中没有'href'属性。尝试使用具有正确href的元素并使用它来提交表单。

答案 1 :(得分:1)

要解决此问题,我只需在导航栏链接上添加一个查询字符串

<li class=" animateNav <?php if ($pageCat == "Well Service"){ echo "active"; } ?>"><a id="link" href="wellservice.php?s=intermittent">WELL SERVICE</a></li>

并使用GET修改表单以更改按钮onclick事件

上的查询参数
            <form name="pumpType" action="?s=<?php echo $pType ?>" method="get" align="center">
            <div class="btn-group" data-toggle="buttons-radio">
              <button type="submit" class="<?php if( $pType == 'intermittent' ){ echo 'active '; } ?>btn btn-primary waitingUiBut" id="but1" name="s" value="intermittent" action="pumpCat">INTERMITTENT</button>
              <button type="submit" class="<?php if( $pType == 'continuous' ){ echo 'active '; } ?>btn btn-primary waitingUiBut" id="but4" name="s" value="continuous"action="pumpCat">CONTINUOUS</button>  
            </div>
        </form>

答案 2 :(得分:0)

如果我正确理解您的目标,我会重新考虑您的应用结构。

你提到你想使用AJAX,所以我将SQL查询放在一个单独的PHP文件中,然后使用jQuery将click或slider函数值发布到该文件,如:

jQuery

然后使用返回的值更新主HTML文件。

有一个基本的例子:

PHP MySQL AJAX