2013-04-13 57 views
1

我打印一個Trade表的一些數據行的PHP代碼。每一行是像點擊或替代方法更改輸入標籤值?

的用戶名 - 報價 - 交換 - 日期 - 貿易

貿易是一個輸入,並且點擊時,相應地做有關PHP檢查和更新數據庫。

如果POST等

$idn=strip_tags($_POST['buy'])); 

$query1=$db->prepare("SELECT * FROM tradeauction WHERE id=:buyid"); 
$query1->execute(array(':buyid'=>$idn)); 

///檢查等。

這是一個包含交易輸入/按鈕DIV: (我知道這可能是做一個很長的路它,但它的舊代碼,而我只是想neaten它,並從MySQL轉換整個網站以PDO)

 <div class="buyrow left"> 
     <?PHP echo"<input class=\"changeBlue\" onmouseover=\"this.className='changeBlueoff'; document.getElementById('$ct->id').className='changeBlueoff'\" 
    onmouseout=\"this.className='changeBlue'; getElementById('$ct->id').className='changeBlue'\" 
onclick=\"this.value='$ct->id'; this.submit()\" type=\"submit\" value=\"Trade\" name=\"buy\">"; ?> &nbsp; 
     </div> 

    $ct->id 

顯然是行的id。

類的改變只是改變按鈕的顏色。

當點擊目前,它的工作原理,但短暫顯示ID給用戶。我不希望發生這種情況。我只是想讓它簡單地說交易。 (藍徘徊時)

如何使點擊時的價值無法顯示,但仍然可以通過對PHP檢查通過的id值?或者可以有人提出一種替代的,更簡單的方法來實現這一點?

編輯:在tradeauctions每個ID(行),它將在HTML打印 -

<div id="cashtrades"> 
    <div class="trrow left"> <?php echo "<a href=profile.php?viewuser=$ct->username >$ct->username</a>"?></div> 
    <div class="prrow left"><?PHP echo"$showname"; ?></div> 
    <div class="ofrow left"><?PHP echo"$symbolcheck".makecomma($ct->item_amount)." $itemcheck"; ?> </div> 
    <div class="exrow left"><?PHP echo"$exsymcheck".makecomma($ct->exchange_amount)." $exitemcheck"; ?></div> 
    <div class="darow left"><?PHP echo"$ct->datepost"; ?></div> 
    <div class="buyrow left"><?PHP echo"<input class=\"changeBlue\" onmouseover=\"this.className='changeBlueoff'; document.getElementById('$ct->id').className='changeBlueoff'\" 
      onmouseout=\"this.className='changeBlue'; getElementById('$ct->id').className='changeBlue'\" 
      onclick=\"this.value='$ct->id'; this.submit()\" type=\"submit\" value=\"Trade\" name=\"buy\">";?>&nbsp;</div> 
    </div> 
+0

你的用戶身份證在哪裏回顯到html中,我在你的代碼中看不到它? –

+0

沒有用戶標識。 $ ct-> id是包含數據庫中交易詳情的行的id。 – user1953045

+1

好吧,我明白了。你能寫一個javascript函數來設置一個隱藏的輸入項目的值,而不是你正在更新的輸入在你的php代碼中使用它嗎? –

回答

1

JQuery看看。你會發現它將改變你與javascript的交互。如果您不確定所有的{}(){()}是否表示搜索道格拉斯克羅克福德並觀看他的視頻。

這就是說。

<div class="buyrow left"><?PHP echo"<input class=\"changeBlue\" onmouseover=\"this.className='changeBlueoff'; document.getElementById('$ct->id').className='changeBlueoff'\" 
     onmouseout=\"this.className='changeBlue'; getElementById('$ct->id').className='changeBlue'\" 
     onclick=\"this.value='$ct->id'; this.submit()\" type=\"submit\" value=\"Trade\" name=\"buy\">";?>&nbsp;</div> 

嘗試

<div class="buyrow left"> 
// this is a new hidden input with the buy id 
<input type=hidden name=buy id=buyinput value=<?php echo $ct->id ?> > 

//onclick Submit 
<?PHP echo"<input class=\"changeBlue\" onmouseover=\"this.className='changeBlueoff'; document.getElementById('$ct->id').className='changeBlueoff'\" 
     onmouseout=\"this.className='changeBlue'; getElementById('$ct->id').className='changeBlue'\" 
     onclick=\"this.submit()\" type=\"submit\" value=\"Trade\" name=\"anotherbuy\">";?>&nbsp;</div> 

這是非常難讀這段代碼,我想你應該這樣做的另一種方式,但什麼上述應該解決您的問題。