如何获取循环select的值

zilingzhi 2011-05-24 04:54:22
页面
http://www.akscambodia.com/hotels.asp?id=41&lm=110

他是循环出来的,请问如何获取值???

图示:
...全文
648 24 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
24 条回复
切换为时间正序
请发表友善的回复…
发表回复
zilingzhi 2011-05-26
  • 打赏
  • 举报
回复
各位i

这个是很难的问题

我打算不做下去了 参考网站:

http://www.akscambodia.com/hotels.asp?id=41&lm=110

和我上面的截图相比,其实还有付款方式 入住时间这些东东。结合起来是相当难的。


我还是溜号走人了
zhaohy678 2011-05-26
  • 打赏
  • 举报
回复
例子 38-3. 上传一组文件

PHP 的 HTML 数组特性甚至支持文件类型。

<form action="" method="post" enctype="multipart/form-data">
<p>Pictures:
<input type="file" name="pictures[]" />
<input type="file" name="pictures[]" />
<input type="file" name="pictures[]" />
<input type="submit" value="Send" />
</p>
</form>

<?php
foreach ($_FILES["pictures"]["error"] as $key => $error) {
if ($error == UPLOAD_ERR_OK) {
$tmp_name = $_FILES["pictures"]["tmp_name"][$key];
$name = $_FILES["pictures"]["name"][$key];
move_uploaded_file($tmp_name, "data/$name");
}
}
?>
数组在php中很强大
ihefe 2011-05-26
  • 打赏
  • 举报
回复

$html=<<<HTML
<BR><BR>
<FORM METHOD=POST ACTION="b.php">
<select id="88" name="room[{$rid}]" style="width:35px;">
<option value="0">0</option>
<option value="1" selected>1</option>
</select><BR>
<select id="99" name="room[{$rid}]" style="width:35px;">
<option value="3" selected>3</option>
<option value="4">4</option>
</select>
<INPUT TYPE="submit" value='提交'>
</FORM>
HTML;


这样不是可以了。。
zilingzhi 2011-05-26
  • 打赏
  • 举报
回复
1-4
2-0

获取到这样的数值 大家说怎么处理!
zilingzhi 2011-05-26
  • 打赏
  • 举报
回复
<option value="<?php echo $rid;?>-0">0</option>
<option value="<?php echo $rid;?>-1">1</option>
<option value="<?php echo $rid;?>-2">2</option>

只好这样试一试。拿到两个值


zilingzhi 2011-05-26
  • 打赏
  • 举报
回复
太郁闷了 练如何测试他非空都不知道
乌镇程序员 2011-05-25
  • 打赏
  • 举报
回复
不用这么复杂啊。。。你仔细考虑一下,实际上只有两个字段的数据是必须的,一个是房间类型(大床、标间、钟点<你懂的>。。),另一个是预定的房间数量。
输出表单时,通过字符串拼接操作,构造select控件的name属性值,加上一个固定的前缀,最后的name值(也就是POST传递的变量的形式为room00,room是前缀,后面的数字是房间类型,选项的值是预定的间数。

在接收数据的页面,循环$_POST数组,如果键值是以room前缀开始开头的,截取字符串后面几位数字,得到房间类型。
zilingzhi 2011-05-25
  • 打赏
  • 举报
回复
爷爷的 这个好复杂

我打算这么写,但还没有经过测试。

<select id="88" name="room$i" style="width:35px;">
<option value="$roomid=$i;$nums=3*价格;$tatal=5;">0</option>
<option value="1" selected>1</option>
</select>

这个是俺刚刚想出来的。

直接输出到php处理页面为:

$roomid=$i;$nums=3;$tatal=3*价格;

循环得到 N个这样的数据。

将$i组合起来,形成数组(23,56,334,343).在通过数据库from in,输出一个表格。


这样应该就好理解一些。上面各位大神的东东,让小弟头有点晕。


乌镇程序员 2011-05-25
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 zilingzhi 的回复:]

引用 8 楼 t5500 的回复:
按楼主给出的这个网站,select的数据可以这样处理(name属性是以room为前缀的):

PHP code
$_POST['room88'] = 3;
$_POST['room89'] = 1;
if (isset($_POST)) {
$ar = array();
foreach($_POST as $k => $v) {
if (su……
[/Quote]
没仔细看我写的代码吧。。。$_POST['room88']=3;这个是用来测试的数据,实际上当然应该是表单提交过来的。。
ycjnx 2011-05-25
  • 打赏
  • 举报
回复
你是不是要这个?

a.php


<BR><BR>
<FORM METHOD=POST ACTION="b.php">
<select id="88" name="room880" style="width:35px;">
<option value="0">0</option>
<option value="1" selected>1</option>
</select><BR>
<select id="99" name="room120" style="width:35px;">
<option value="3" selected>3</option>
<option value="4">4</option>
</select>
<INPUT TYPE="submit" value='提交'>
</FORM>


b.php

if (isset($_POST)) {
foreach($_POST as $k => $v) {
echo "<BR>".$k."=".$v;
}
}


输出:
room880=1
room120=3
us110 2011-05-25
  • 打赏
  • 举报
回复
不懂这个 你发的有什么用吗
zilingzhi 2011-05-25
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 ycjnx 的回复:]
a.php

HTML code

<BR><BR>
<FORM METHOD=POST ACTION="b.php">
<select id="88" name="room[]" style="width:35px;">
<option value="0">0</option>
<option value="1" selected>1</option>
</select><BR……
[/Quote]

十分感谢!你的这个写法很厉害。正在参考中。
zilingzhi 2011-05-25
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 t5500 的回复:]
按楼主给出的这个网站,select的数据可以这样处理(name属性是以room为前缀的):

PHP code
$_POST['room88'] = 3;
$_POST['room89'] = 1;
if (isset($_POST)) {
$ar = array();
foreach($_POST as $k => $v) {
if (substr($k……
[/Quote]

下面这些暂时不需要。

我需要的是:
$_POST['room88'] = 3;
$_POST['room89'] = 1;
这个是怎么来的??

他是room88,也可以是room90,也可以是room120. 而且他不一定是88 和89,有可能是room1,room2,room3,room4,room5……

88这个值,不是确定的,他是循环输出的。

应该不能这么获取。
zilingzhi 2011-05-25
  • 打赏
  • 举报
回复
首先多谢各位捧场!!!!!!!!11
ycjnx 2011-05-24
  • 打赏
  • 举报
回复
a.php

<BR><BR>
<FORM METHOD=POST ACTION="b.php">
<select id="88" name="room[]" style="width:35px;">
<option value="0">0</option>
<option value="1" selected>1</option>
</select><BR>
<select id="99" name="room[]" style="width:35px;">
<option value="3" selected>3</option>
<option value="4">4</option>
</select>
<INPUT TYPE="submit" value='提交'>
</FORM>



b.php

<?php
$room = $_POST['room'];//这是个数组
foreach($room as $newstr){
echo "<br>".$newstr;
}
?>


输出:
1
3
ycjnx 2011-05-24
  • 打赏
  • 举报
回复
同上,OK
乌镇程序员 2011-05-24
  • 打赏
  • 举报
回复
按楼主给出的这个网站,select的数据可以这样处理(name属性是以room为前缀的):
$_POST['room88'] = 3;
$_POST['room89'] = 1;
if (isset($_POST)) {
$ar = array();
foreach($_POST as $k => $v) {
if (substr($k,0,4) == 'room') {
$ar[substr($k,4)] = $v;
}
}
print_r($ar); //$ar数组的索引号为房间号(整数),值为数据(预定房间数)
}
baoxiaohua 2011-05-24
  • 打赏
  • 举报
回复
可以使用数组,也可以使用编号,看你喜欢了

  • 打赏
  • 举报
回复
<select id='预订' name='预订'>
<option value='1'>1</option>
<option value='2'>2</option>
……
</select>
您是循环输出的,让option的value值和外面的值一样
$value = $_POST['预订'];
这样可以吗
baoxiaohua 2011-05-24
  • 打赏
  • 举报
回复
没明白楼主要什么
加载更多回复(4)

21,893

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧