2011-10-22 96 views
0

你好,大家好我掠從我的MySQL數據庫的結果,並取得了html表單,並放在一邊一個提交按鈕的PHP提交表單。在buydo.php所有$ _posts但即時得到任何我想要做的提交一個php表單?

<form method="post" action="buydo.php"> 
       <label><br /> 
       <br /> 
       </label> 
       <p> 


       <?php 
    $sql = "SELECT pokemon_name, Pokemon_pic, Pokemon_level, price FROM sell 
      ORDER BY Pokemon_level ASC"; 
    $res = mysql_query($sql) or die(mysql_error()); 

     while ($v = mysql_fetch_array($res)) { 
      echo ' 
       <div class="auction_box"> 
       <img src="http://pokemontoxic.net/new_rpg/'.$v['Pokemon_pic'].'" width="100" height="100"><br/> 
       &pound;'.$v['price'].'<br/> 
       <label id="pokemonName'.$v['id'].'">'.$v['pokemon_name'].'</label><br/> 

       <label>Level '.$v['Pokemon_level'].'</level><br/> 
       <label>Time Left:'; 

       echo '</label> 
       <br/> 
       <input type="submit" id="'.$v['id'].'" class="buy_submit" value="Buy Now" /> </div>'; 
     } 

?> 



       &nbsp;</p> 
       <p>&nbsp;</p> 
       </form> 

林印刷是從該腳本在buydo頁面獲得$ V [「身份證」]。但是對於一些重新進入下一頁的內容。我有連接和會話開始它顯示的結果和一切只是當我按下提交按鈕信息不subimited即時採取buydo.php,但沒有被張貼?

回答

2

嘗試創建一個隱藏的輸入剛剛提交輸入上述(它可以去任何地方真的,但有它有提高可讀性)。將名稱設置爲static(例如,「pokemonID​​」),然後將value屬性設置爲要發送到下一頁的任何內容。在這種情況下,它將是$ v ['id']。同樣的事情也該會的工作:

<input type="hidden" name="pokemonID" value="' . $v['id'] . '" /> 

在PHP頁面,您將使用$ _ POST [「pokemonID​​」]來訪問數據。

+0

當我做echo $ _POST ['pokemonID​​']我什麼也得不到? – user1008843

+0

不要擔心我自己的錯誤,我得到的ID從SQL選擇固定它現在將標記這是正確的,當它讓我感謝這麼多 – user1008843

1

如果我的理解正確無誤,請加載buydo.php頁面,但是您沒有提交提交的值,以便您可以使用$_POST訪問它?

那是因爲你沒有在你的表單輸入的任何元素。添加一個隱藏字段會做的伎倆:

<input type="hidden" name="vid" value="'.$v['id'].'"> 

現在你可以使用$_POST['vid']buydo.php訪問值。

1

id屬性一般不會得到發佈,其主要用途是相同的HTML作爲標識符內。

什麼獲取通過POST提交(或GET)是名稱和值字段:

例如:<input name='inputname' value='inputvalue' />將使提交目標網頁獲得$ _ POST [ 'inputname'] = 'inputValue將'

您可以隨時使用隱藏域: <input type='hidden' name='id'.<unique_identifier_for_this_result> value=$v['id'] />

,並有相應的職位

<input type='submit' name='submit'.<the_same_unique_identifier_for_this_result> value='Buy' />

然後

接收頁面應該已經收到所有隱藏字段的形式,只提交場您選擇。 I.E.如果您點擊了'submit22'(標識符= 22),那麼將設​​置$ _POST ['submit22']並且您感興趣的實際隱藏字段將是$ _POST ['id22']

另一種方法是拆分每個結果在一個單獨的表格:

$sql = "SELECT pokemon_name, Pokemon_pic, Pokemon_level, price FROM sell 
     ORDER BY Pokemon_level ASC"; 
$res = mysql_query($sql) or die(mysql_error()); 

    while ($v = mysql_fetch_array($res)) { 
     echo '<form method="post" action="buydo.php"> 
       ... 
       <input type="hidden" name="id" value='.$v['id'].' 
       <input type="submit" name="SubmB" value="Buy"> 
       </form>'