2013-04-13 26 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> 

这是非常难读这段代码,我想你应该这样做的另一种方式,但什么上述应该解决您的问题。