Php 将值传递给以后的页面
在第一个处理文件之后,是否有方法将在第一个或更早的下拉选择表单中提交的值传递给后续处理代码/文件 我想做的是:我为鞋类尺寸、类型和样式表创建了一个db,然后创建了一个名为syle_in_size的查找表,该表的大小与样式有关。其思想是从这个表开始查询,以便所有内容都基于用户在搜索开始时选择的大小。在此基础上,将确定具体的鞋类尺寸、款式和类型 所以我想出了从一个下拉/选项表传递到另一个我知道的下拉/选项表的代码,不同的页面***我见过advise和页面在一个页面中完成所有功能,但我想连续完成这些功能——部分是作为设计元素,还因为我不懂javascript,因为几个月前我才开始编程,每次只使用一种语言 以下是我所拥有的: 尺寸表Php 将值传递给以后的页面,php,mysql,Php,Mysql,在第一个处理文件之后,是否有方法将在第一个或更早的下拉选择表单中提交的值传递给后续处理代码/文件 我想做的是:我为鞋类尺寸、类型和样式表创建了一个db,然后创建了一个名为syle_in_size的查找表,该表的大小与样式有关。其思想是从这个表开始查询,以便所有内容都基于用户在搜索开始时选择的大小。在此基础上,将确定具体的鞋类尺寸、款式和类型 所以我想出了从一个下拉/选项表传递到另一个我知道的下拉/选项表的代码,不同的页面***我见过advise和页面在一个页面中完成所有功能,但我想连续完成这些功
+--------+------+
| sizeid | size |
+--------+------+
| 7.0 | 7.0 |
| 7.5 | 7.5 |
| 9.0 | 9.0 |
| 9.5 | 9.5 |
| 11.0 | 11.0 |
+--------+------+
+---------------+--------+---------+
| sizeinstyleid | sizeid | styleid |
+---------------+--------+---------+
| 1 | 7.0 | 1 |
| 2 | 7.5 | 1 |
| 3 | 11.0 | 1 |
| 4 | 7.5 | 2 |
| 5 | 9.0 | 2 |
| 6 | 7.5 | 3 |
| 7 | 11.0 | 3 |
| 8 | 7.0 | 4 |
| 9 | 7.5 | 4 |
| 10 | 9.0 | 4 |
| 11 | 11.0 | 5 |
| 12 | 9.0 | 6 |
| 13 | 11.0 | 6 |
| 14 | 7.5 | 7 |
| 15 | 9.0 | 7 |
| 16 | 11.0 | 7 |
| 17 | 7.5 | 8 |
| 18 | 9.0 | 8 |
| 19 | 11.0 | 8 |
| 20 | 7.0 | 9 |
+---------------+--------+---------+
类型表
+--------+---------+
| typeid | type |
+--------+---------+
| 1 | Shoes |
| 2 | Boots |
| 3 | Sandals |
+--------+---------+
样式表
+---------+--------+------------+
| styleid | typeid | style |
+---------+--------+------------+
| 1 | 1 | Athletic |
| 2 | 1 | Lace-up |
| 3 | 1 | Loafers |
| 4 | 1 | Moccasins |
| 5 | 2 | Combat |
| 6 | 2 | Hiking |
| 7 | 2 | Riding |
| 8 | 3 | Flip Flops |
| 9 | 3 | Slide |
+---------+--------+------------+
尺寸表中的样式
+--------+------+
| sizeid | size |
+--------+------+
| 7.0 | 7.0 |
| 7.5 | 7.5 |
| 9.0 | 9.0 |
| 9.5 | 9.5 |
| 11.0 | 11.0 |
+--------+------+
+---------------+--------+---------+
| sizeinstyleid | sizeid | styleid |
+---------------+--------+---------+
| 1 | 7.0 | 1 |
| 2 | 7.5 | 1 |
| 3 | 11.0 | 1 |
| 4 | 7.5 | 2 |
| 5 | 9.0 | 2 |
| 6 | 7.5 | 3 |
| 7 | 11.0 | 3 |
| 8 | 7.0 | 4 |
| 9 | 7.5 | 4 |
| 10 | 9.0 | 4 |
| 11 | 11.0 | 5 |
| 12 | 9.0 | 6 |
| 13 | 11.0 | 6 |
| 14 | 7.5 | 7 |
| 15 | 9.0 | 7 |
| 16 | 11.0 | 7 |
| 17 | 7.5 | 8 |
| 18 | 9.0 | 8 |
| 19 | 11.0 | 8 |
| 20 | 7.0 | 9 |
+---------------+--------+---------+
第一页:选择_SIZE.php
<?php
$con = mysql_connect("localhost", "xxxxx", "xxxxx") or die('Could not connect to server');
mysql_select_db("footwear", $con) or die('Could not connect to database');
echo "<form action=\"select_type.php\" method=\"get\">\n";
echo "<select name=\"size\">\n";
$query="SELECT sizeid,size FROM size WHERE sizeid";
$result=mysql_query($query);
while($row=mysql_fetch_array($result,MYSQL_ASSOC))
{
$sizeid= $row['sizeid'];
$size= $row['size'];
echo "<option value=\"$sizeid\">$size</option>";
}
echo "</select>\n";
echo "<input name=\"submit\" type=\"submit\" id=\"sizeid\" value=\"submit\" />\n";
echo "</form> \n";
?>
此外:
我希望我的问题写得有道理。
非常感谢您的帮助和投入。
提前感谢。考虑到您要在多个页面上执行此操作,最好的解决方案可能是使用会话 例如,当您获得可以在会话中存储的大小时:
$_SESSION['size'] = $size;
在后面的页面中,您可以检索以下内容:
$sizeFromAPreviousPage = $_SESSION['size'];
注意:确保在使用会话的页面开始处调用会话\u start
正如Charles提到的,您应该采取措施防止SQL注入。mysql_*现已弃用。警告!您的代码包含一个-您正在将原始、未过滤、未验证的数据直接传递到SQL字符串中。请用一下。谢谢你的警告,查尔斯。正如我提到的,我是新的t编程,似乎我学到了一门老课程。或者,如果你不想使用会话,你也可以使用@Rob Yep,那也可以:谢谢,Jim和Rob。我回到家后很高兴能尝试你的建议。当然,我很好奇:为什么$\u SESSIONS的想法比Rob的建议更好?$\u SESSION是一个内置工具,它可以让快速高效地存储和检索数据变得更容易。除非你打算让成千上万的人同时使用这个页面,否则这是一个不错的选择。当其他程序员看到它时,它的代码编写更少,阅读也更容易。我只是建议另一条路线给你更多的选择。当我第一次启动php时,我一直使用input type=hidden。除非你打算让成千上万的人同时使用这个页面,否则这是一个不错的选择。如果运气好的话,你建议使用hidden会更好吗?
$_SESSION['size'] = $size;
$sizeFromAPreviousPage = $_SESSION['size'];