2017-05-16 9 views
0

私は店主の在庫を埋めるウェブページを作成しようとしています。私はお店は、配列の内部で販売されるアイテムを配置しているが、私はあなたがそのような配列をエコーすることはできません配列配列から項目をリストに引き込むのに問題があります

<body> 
    <div id="container"> 
    <form method="post" action="spell-shop.php"> 
     tier 1 spells in shop<input type="text" name="tier1"><br> 
     tier 2 spells in shop<input type="text" name="tier2"><br> 
     tier 3 spells in shop<input type="text" name="tier3"><br> 
     Master spells in shop<input type="text" name="master"><br> 
     <input type="submit"> 
    </form> 
<?php 
    $spells1 = array(
     'Commune - level 1 - Any' , 'Detect Magic - Level 1 - Any' , 'Devine Favor - Level 1 - Any' , 'Magic Missile - Level 1 - Any' , 'Prestidigation - Level 1 - Any' , 'True Strike - Level 1 - Any' , 'Shield - Level 2 - Any' , 'Locate Object - Level 2 - Any' , 'Prayer of Healing - level 2 - Any' , 'Alarm - Level 1 - Air' , 'Feather Fall - Level 1 - Air' , 'Jump - Level 1 - Air' , 'Longstrider - Level 1 - Air' , 'Shocking Grasp - Level 1 - Air' , 'Tensers Floating Disk - Level 2 - Air' , 'Thunderous Smite Lelvel 2 - Air' , 'Find Traps Level 2 - Air' , 'Gust of Wind Level - 2 - Air' , 'Knock - Level 2 - Air' , 'Levitate - Level 2 - Air' , 'Rope - Trick 2 - Air' 
    ); 
    if (isset($_POST['tier1'])) { 
     $name = $_POST['tier1']; 
     $inventory = array_rand($spells1, $name); 
     echo "$inventory"; 
    } 
?> 
    </div> 
</body> 
+0

ここでは1つのPOST配列しか使用しておらず、入力としても配列として扱う必要があります。 –

+1

'array_rand'は2つのパラメータをとります。最初は配列、2番目の配列はその配列で選択される数値の項目です。 – Akintunde007

+0

この記事をチェックする:http:// stackoverflow.com/question/17957588/stop-multiple-select-option-into-a-php-array' – butterFlyNick

答えて

-1

から出力複数の項目にPHPを取得することはできません。 array_randの場合、pick from配列を指定し、2番目のパラメータはランダムに引き出したい項目の数です。

$inventory = array_rand($spells1,2);

は、だから今は$インベントリをループする必要があると思います$インベントリ

に$ spells1から2つの要素を入れて、その結果をエコーし​​ます。

foreach($inventory as $item){ 
    echo $item; 
} 

$ name/$ _POST ['tier1']には数値が必要です。

+0

男...後ろ向きの研究は本当にキラーです、それ? ¯\\ _(ツ)_ /¯ –

関連する問題