2013-02-12 74 views
0

所以我在我的智慧結束。在更復雜的問題中,這是一個讓我難堪的問題。我不知道這是HTML問題還是PHP問題。我已經嘗試了所有我能想到的,而且什麼都沒有。 好的,我需要從動態創建的表中取出一個特定的名稱,武器的名稱是確切的。 所以用戶點擊按鈕「刪除武器」,該武器將被刪除。查詢很好;我的問題是得到這個名字。如果只有一種武器,而且這種武器不是動態的,那麼我只會選擇具體的字段名稱。這是PHP 101 這是它正在從拉環:PHP從動態創建的表格中提取特定名稱

while ($weapons = mysql_fetch_array($data)) { 
      echo ' 
       <table width="780" border="1"> 
       <tr> 
        <td colspan="2">weapon</td> 
        <td>AttackBonus</td> 
        <td>crit</td> 
       </tr> 
       <tr> 
        <td colspan="2"> 

         <input type="text" name="weaponName'.$i.'" id="weaponName'.$i.'" size="10" value="'.$weapons["weaponsName"].'" /> 
         <input type="hidden" name="weaponName" value="'.$weapons["weaponsName"].'"/> 
        </td> 
        <td> 
         <input type="text" name="attackBonus'.$i.'" id="attackBonus'.$i.'" size="10" value='.$weapons["weaponsAttackBonus"].' /> 
        </td> 
        <td> 
         <input type="text" name="crit'.$i.'" id="crit'.$i.'" size="10" value='.$weapons["weaponsCritical"].' /> 
        </td> 
       </tr> 
       <tr> 
        <td>type</td> 
        <td>range</td> 
        <td>ammunition</td> 
        <td>damage</td> 
       </tr> 
       <tr> 
        <td> 
         <input type="text" name="type'.$i.'" id="type'.$i.'" size="10" value='.$weapons["weaponsType"].' /> 
        </td> 
        <td> 
         <input type="text" name="range'.$i.'" id="range'.$i.'" size="10" value='.$weapons["weaponsRange"].' /> 
        </td> 
        <td> 
         <input type="text" name="ammunition'.$i.'" id="ammunition'.$i.'" size="10" value='.$weapons["weaponsAmmunition"].' /> 
        </td> 
        <td> 
         <input type="text" name="damage'.$i.'" id="damage'.$i.'" size="10" value='.$weapons["weaponsDamaage"].' /> 
        </td> 
       </tr> 
       <tr> 
        <td colspan="4"> 
         <input type="submit" formaction="include/deleteweapon.php" formmethod="post" value="Delete Weapon"/> 
        </td>    
       </tr> 
       </table> 

    '; 
     $i++;} 

這也可能是一些小事情,這就是它一直是我的問題。我嘗試了幾個不同的while循環。我試過如果陳述與issets($ _ post [「weaponName0」]等我只是不知道。

編輯: 所以我不是很好,解釋我需要。信息是好的,是按鈕需要存在。

(我沒有足夠的代表最多加載圖像所以這裏是鏈接) http://farm9.staticflickr.com/8391/8468562067_0cd4158e35_b.jpg

這是什麼樣子。我無法得到武器名稱的價值,這裏的輸出沒問題,當我需要刪除特定的武器時,我遇到了問題,我需要這個名稱,這就是爲什麼我不確定它是否是HTML或PHP。這個按鈕必須被迭代或者說有什麼意義? mySQL很好,這是很容易的部分。

我對我能做什麼有一個想法,但在我看來這是糟糕的設計,我想我會有同樣的問題。我可以添加一個複選框以刪除這些字段,並且在您嘗試保存該字符後它將被刪除。

+0

[**請不要在新代碼中使用'mysql_ *'函數**](http://bit.ly/phpmsql)。他們不再被維護[並被正式棄用](https://wiki.php.net/rfc/mysql_deprecation)。看到[**紅框**](http://j.mp/Te9zIL)?學習[*準備的語句*](http://j.mp/T9hLWi),並使用[PDO](http://php.net/pdo)或[MySQLi](http://php.net/ mysqli) - [這篇文章](http://j.mp/QEx8IB)將幫助你決定哪個。如果你選擇PDO,[這裏是一個很好的教程](http://j.mp/PoWehJ)。 – h2ooooooo 2013-02-12 20:06:34

+1

我不明白,它看起來像你有一個「刪除武器」按鈕爲每個循環迭代,意味着每個武器的一個刪除按鈕,是否正確? – 2013-02-12 20:06:52

+0

您在名稱= weaponName中缺少$ i,請參閱ID如何得到後綴值 – Shridhar 2013-02-12 20:12:33

回答

0

我不是100%肯定我明白你的問題,我相信你的HTML,你應該這樣做:

<input type="hidden" name="weaponName[<?php print $i; ?>]" value="The Name" /> 

在你的PHP,你應該能夠訪問的名稱給出的指數:

$index = 1; // Some arbitrary index 
$weapon_name = $_POST['weaponName'][$index]; 

或者,我會怎麼做:在你的表單的操作,指定一個id:

<form action="delete.php?id=<?php print $weaponId; ?>" action="post"> 

然後在你的PHP,你可以這樣做:

$id = $_GET['id']; // This is the weapon ID 

然後,你可以直接從數據庫中提取的名稱,使用的ID。

+0

明天我會試試。這是一個令人沮喪的一天。 – 2013-02-12 23:39:29

+0

謝謝,獲取是我需要的,像往常一樣,它總是很小。再次感謝你。 – 2013-02-13 14:47:01

0

它看起來像你有一個單一的刪除按鈕循環的每個迭代。您應該能夠設置刪除的名稱,就像您將其設置爲標籤一樣。

<input type=hidden name=weaponsName value=".$weapons['weaponsName']."> 
<input type=submit ...> 

$weaponsName = $_POST['weaponsName']; 
0

您使用mysql_fetch_array代替mysql_fetch_assoc,所以你應該使用字段指數,就像這樣:

$weapons["weaponsName"] // This is wrong 


$weapons[0] // This is the right approach 

PS:你不應該使用mysql擴展....去和mysqli或PDO;)

Saludos。

+0

獲取不是問題,即正常工作。 Fetch Assoc位於頁面的頂部。 – 2013-02-12 23:28:21

+0

那麼使用這一行有什麼意義:while($ weapons = mysql_fetch_array($ data))。在這一行你填充$武器惠特fetch_array? 。對不起,但我不明白這一行....可能是你應該做一個var_dump武器之後,該行和之前的行。 Saludos :) – Hackerman 2013-02-13 12:58:54

+0

它適用於循環(不是循環內的值),用戶使用多少個武器迭代它們。 – 2013-02-13 14:15:20