2015-07-20 51 views
-1
for($i = 1; $i <= 1; $i++) { 
    $you_item[$i] = ucwords($_POST['you_item'.$i.'']); 
    $you_item[$i] = "http://steamcommunity.com/market/priceoverview/?appid=570&currency=1&market_hash_name=".$you_item[$i].""; 
    $you_item[$i] = str_replace(' ', '%20', $you_item[$i]); 
    $you_item[$i] = file_get_contents($you_item[$i]); 
    $you_item[$i] = json_decode($you_item[$i], true); 
    $you_item[$i] = $you_item[$i]['median_price']; 
    $you_item[$i] = preg_replace("/&#?[a-z0-9]{2,8};/i","", $you_item[$i]); 
    echo $you_item[$i]; 
} 

样品点是这样的http://bit.ly/1gKGoN0PHP for循环串联

我有一个问题,从文本框获取值的循环

我声明如下

<?php for($i=1;$i<=15;$i++){ ?> <input type="text" name="<?php echo 
"you_item".$i.""?>" /> <?php } ?> 
形式

但现在的问题是我无法从我转发给$ you_item [$ i]的文本框中获取值。 我所做的网站没有循环。我将$ you_item1编码为15,因为我有15个文本框。 有人可以帮我吗?

+0

你应该使用数组输入元素。 http://stackoverflow.com/questions/3314567/how-to-get-form-input-array-into-php-array – Maximus2012

+1

你犯了一个错误命名你的输入字段。它的名字对应于'you_item1','you_item2',这不是我们做事情的方式。您的字段应该如下所示:''。当提交给PHP脚本时,您将在$ _POST ['you_item']'中有一个可以通过数字索引访问的数组,例如$ _POST ['you_item'] [0]','$ _POST [ 'you_item'] [1]'等等 –

回答

0

尝试改变,

<?php for($i=1;$i<=15;$i++){ ?> <input type="text" name="<?php echo 
"you_item".$i.""?>" /> <?php } ?> 

<input type="text" name="you_item[]" /> 
+0

for($ i = 1; $ i <= 1; $ i ++)$ you_item [$ i] = ucwords($ _ POST ['you_item'。$ i '']); $ you_item [$ i] =“http://steamcommunity.com/market/priceoverview/?appid=570¤cy=1&market_hash_name=".$you_item[$i]。”“; $ you_item [$ i] = str_replace('','%20',$ you_item [$ i]); $ you_item [$ i] = file_get_contents($ you_item [$ i]); $ you_item [$ i] = json_decode($ you_item [$ i],true); $ you_item [$ i] = $ you_item [$ i] ['median_price']; $ you_item [$ i] = preg_replace(“/&#?[a-z0-9] {2,8};/i”,“”,$ you_item [$ i]); echo $ you_item [$ i]; } – Marverick

+0

实际上,我们可以写出尽可能多的文本框,如 1
2
3,并通过运行循环获取所有输入值超过$ _POST ['you_item'] [$ i] – sriharichander