2011-01-12 4 views
0

DBから情報を取得する小さな検索エンジンを作るのに忙しいです。次に起こることは、検索されたすべてのレコードに編集オプションがあることです。だから、すべてのレコードに一意の名前の送信ボタンを付ける必要があります。これは、ボタンを押すまでうまくいきます。それからすべてのボタンは同じ名前です。 PHP複数の送信ボタンの一意の名前が失敗します

while($_POST[$t]>0){ 
    if (isset($_POST[$t])) { 
    do stuff 
    } 
    else{ 
    $_POST[$t]-=1; 
    } 
} 

は称賛、 '' と "" 心配しないでください:
create form:" 
<form sutff> 
$t=0; 
while(){<br/> 
$t+=1;<br/> 
input type="Submit" name="$t"/><br/> 
}</form> 
は、ボタンを押しました。私はそれを自分で修正します。

+4

実際のコードを掲載する必要があります。現在のところ、われわれにとっては意味が分かりにくい。 – BoltClock

答えて

1

A JavaScriptのアプローチは、このように書きます:サーバー側で

<form name="form1" method="post"> 
<input type="hidden" name="item_id" value=""> 
<input type="submit" value="submit this" onclick="document.form1.item_id.value = '<?php echo 16; ?>';"> 
<input type="submit" value="submit this" onclick="document.form1.item_id.value = '<?php echo 32; ?>';"> 
<input type="submit" value="submit this" onclick="document.form1.item_id.value = '<?php echo 48; ?>';"> 
</form> 

その100%のHTML + CSSソリューション以来、おそらくより良い別のオプションは、これらに沿って何かをすることです行:サーバー側で

<style type="text/css"> 
.submit-button { 
    .submit-button { 
     /* WARNING: works only in standards compliance mode */ 
     text-indent: -1000px; /* this hides the button label */ 
     background: url("edit.gif") no-repeat; /* this places an icon inside the button */ 
     margin: 0; /* rest makes the button look CoOl */ 
     border: 1px solid; 
     border-color: buttonhighlight buttonshadow buttonshadow buttonhighlight; 
     padding: 0; 
     width: 18px; 
     height: 18px; 
    } 
</style> 

<form name="form1" method="post"> 
<input type="submit" name="item_id" value="<?php echo 16; ?>" class="submit-button"> 
<input type="submit" name="item_id" value="<?php echo 32; ?>" class="submit-button"> 
<input type="submit" name="item_id" value="<?php echo 64; ?>" class="submit-button"> 
</form> 

1

各行に別々のフォームを使用すると、データでフィールドを非表示にすることができます。

もう1つの解決策は、submitbuttonでonclickイベントを使用して、送信を続行する前に隠しフィールドを設定することです。

送信ボタンの名前は正しく機能するはずです。

3つ目のオプションは、サブミットをまったく使用しないでプレーンボタンに移動し、代わりにURLを開くためにonclickを使用することです。

第4のオプションは、リンクが付いた画像でボタンを偽造することです。

さらに詳しい情報があれば、さらにいくつかのアイデアが得られるかもしれません。

+0

これらのオプションのうちの2つが私の答えで実証されています:) –

0

イムないあなたはあなたが送信ボタンの値を設定し、

<input type='submit' name='sub' value='edit' /> 
<input type='submit' name='sub' value='search' /> 

ことを読み、PHPであなたが

if ($_POST['sub'] == "edit") { 
    //Do edits 
} 
else if ($_POST['sub'] == "search"){ 
    //Do searching 
} 
else{ 
    //Run Away.... 
} 

希望にこれを行うことができ

を求めているか確認してください助けて!

0

なぜ送信ボタン、またはボタンでなければならないのですか?

<a href="edit.php?id=1">Edit item 1</a> 
<a href="edit.php?id=2">Edit item 2</a> 
<a href="edit.php?id=3">Edit item 3</a> 
<a href="edit.php?id=4">Edit item 4</a> 
関連する問題