小编Ada*_*dam的帖子

PHP - 在回发期间保留表单值的最佳实践

这里完成PHP新手,几乎我以前的所有工作都是在ASP.NET中完成的.我现在正在研究一个PHP项目,我偶然发现的第一个摇滚是在回发中保留值.

对于最简单但仍然现实的例子,我有10个下拉菜单.它们甚至还没有数据包,因为这是我的下一步.它们是简单的下拉菜单.

我的整个页面都包含在标签中.每个下拉列表的onclick()事件,调用一个javascript函数,该函数将填充相应的下拉列表隐藏元素,并选择下拉列表值.然后,在页面重新加载时,如果该隐藏值不为空,我设置所选选项=我隐藏的选项.

这适用于单个回发.但是,当另一个下拉列表发生变化时,原始的第1个下拉列表会失去其值,因为其相应的隐藏值也会失去其价值!

这使我开始研究使用查询字符串或会话,或者......其他一些想法.

有人能指出我正确的方向,在我的情况下哪个选项最好?我是一个PHP新手,但是我被要求为我的技能水平做一些非常激烈的东西,所以我需要一些灵活的东西,并且更容易使用.

谢谢!

- - -编辑 - - -

对我的问题进行一点澄清:)

当我说'PostBack'时,我指的是提交的页面/表格.控件将传递回服务器,并再次执行HTML/PHP代码.

至于下拉和隐藏,我使用隐藏变量来保留"选定值"或"选定索引"的原因是,当提交页面时,我能够使用之前的选择重绘下拉列表,而不是默认回到第一个索引.当我使用$ _POST []命令时,我无法按名称检索下拉列表,但我能够按名称检索隐藏值.这就是为什么在下拉改变事件时,我调用javascript,它将选定的值从下拉列表设置为其相应的隐藏.

--------再次编辑--------好吧,好吧,我看到我需要退步并解释整体目标:)我很抱歉开始时不是很清楚.

我的最终设计将是一个页面,用户可以在其中选择我们公司内的部门,以查看数据.一旦部门选择(从下拉),那么我会显示更具体的数据选择下拉菜单中的:颜色,大小,供应商,风格,日期,商店#,等等......在这一点上我也将显示销售数据选定的部门.在选择任何颜色,尺寸等时,我将更新销售数据结果以满足新标准

---------编辑----------我不能提供对我的例子的外部访问,但这里是一个有探索的sceenshot.在下图中,用户将展开"部门"下拉列表,以选择一个部门.此时,下面的销售数据将根据该部门刷新.然后,用户将选择"分组依据"选项,例如商店,页面/数据将刷新以显示按商店分组的数据.然后他们可以在我的示例中选择一种颜色,例如黑色,数据将显示所选部门和颜色的销售额,按商店分组.

但是,为了完成所有这些操作,页面需要在每次刷新/发布时保留部门,颜色和分组下拉选项...

替代文字

php postback retain

6
推荐指数
1
解决办法
8723
查看次数

使用code.jquery.com中的代码进行长期应用是否安全?

我在我正在设计的网页上使用Ajax/jquery ...为了使它起作用,我在http://code.jquery.com/jquery-1.4中包含(在我的页面顶部)javascript . 4.js

这很好用,但是我担心1)代码可能会在我不知情的情况下被更改,然后我遇到问题并尝试调试几天/小时,然后才发现此站点的代码已更改

2)网站不再使用/特定代码不再托管多年

那么将javascript文件保存到我的服务器上并从那里访问它会更安全吗?

ajax jquery

4
推荐指数
1
解决办法
2460
查看次数

SQL选择特定列的行的第一个记录

我意识到我的头衔可能并不能很好地解释我的情况,但老实说我真的不知道如何说出来.

我正在使用SQL来访问DB2数据库.

使用下面的截图图片1作为参考:

第1列有三个"U11124"实例,有三种不同的描述(第2列)

我希望这个查询返回"U11124"的第一个实例及其描述,但随后也返回其他行的唯一记录. 2显示了我想要的结果.

图片1

此搜索

图片2

图像2

-----编辑----

回答一些问题/帖子:从技术上讲,它不需要是第一个,只需要那些记录中的任何一个.问题是我们有三个描述,只需要显示一个,我现在被告知哪一个并不重要.

sql db2

3
推荐指数
1
解决办法
2万
查看次数

javascript XMLHttpRequest打开php文件并执行更多javascript

我有一个主页,称之为Main.php.在这个页面上,是一个按钮,当点击它时,使用Results.php的结果设置div的innerHTML(已经在Main.php上,称为divResults).

调用Results.php时,返回的HTML"这些结果"被正确接收并设置为Main.php上divResults的内容.但是,来自Results.php的任何javascript都不会执行.作为一个例子,我尝试做一个简单的window.alert.这是示例代码:

Main.php链接按钮开始动作:

<img src="$MyImageSource" onclick=\"ExpandDropdownDiv()\" />
Run Code Online (Sandbox Code Playgroud)

Main.php javascript函数ExpandDropdownDiv():

function ExpandDropdownDiv(){

    if (window.XMLHttpRequest)/* code for IE7+, Firefox, Chrome, Opera, Safari */
    {
        xmlhttp=new XMLHttpRequest();
    }
    else
    {/* code for IE6, IE5 */
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    xmlhttp.onreadystatechange=function()
    {
        if (xmlhttp.readyState==4)/* && xmlhttp.status==200) */
        {
            document.getElementById("divResults").innerHTML=xmlhttp.responseText;
        }
    }
    xmlhttp.open("GET","Results.php",true);
    xmlhttp.send();

}
Run Code Online (Sandbox Code Playgroud)

Results.php代码示例:

<script type="text/javascript">
    alert("Success");
</script>
These Are The Results
Run Code Online (Sandbox Code Playgroud)

------------------编辑 - 更新------------------

来自Results.php的简单警报只是一个例子.如果我能够让这个工作,我相信我可以自己解决我的其余问题.但是,我注意到一些评论建议在我设置div的innerHTML之后将警报放在Main.php的javascript中.所以,让我解释一下在div设置之后我真正想要用javascript做什么.

图1显示了一些正常的"选择"html元素,这些元素已经使用jquery和dropdown-check-list扩展名(.js)进行了转换.当用户单击底部的彩色向下箭头时,div会扩展,(图像2)并在另一个.php文件中生成另外两个"选择"元素...将返回html,并将其放置在div中.因此,我不需要重新加载整个页面,并且可以将新的选择下拉列表放在现有页面的下方.

问题是,要"转换"这些正常的选择元素,需要对该HTML执行一些javascript:

$(document).ready(function() {
     $(".MultiSelect").dropdownchecklist(  {firstItemChecksAll: true, maxDropHeight: 300 , searchTextbox: true, width: 100, textFormatFunction: …
Run Code Online (Sandbox Code Playgroud)

javascript php ajax httprequest activexobject

1
推荐指数
1
解决办法
9483
查看次数

标签 统计

ajax ×2

php ×2

activexobject ×1

db2 ×1

httprequest ×1

javascript ×1

jquery ×1

postback ×1

retain ×1

sql ×1