4

PHP:
ボタンがクリックされたときに SQL を実行するにはどうすればよいですか? JavaScriptonClick()関数を使用するか、他の方法を使用しますか? 私はこれをループ内で実行しようとしていますが、ボタンがクリックされた行でのみSQLを実行しています...ありがとう!

役立つ@PHPnoObのコード: さて、これですべてが整理されましたが、ボタンがクリックされると、ボタンがクリックされた行に対して 1 回だけでなく、各行に対して 1 回実行されます! ボタンがクリックされた行のみを照会したい...私のコード:

while($row = mysqli_fetch_array($result)) {

//FAULTY CODE!!! EXECUTES ONCE FOR EACH ROW!
//I WANT IT TO ONLY EXECUTE FOR THE ROW THE
//BUTTON WAS CLICKED ON

if(isset($_POST['delete'])){
echo "You clicked on: ".$row['subject'];
//eventually i will have sql query up here
}
//echo all the results into a table... messy
echo"

<tr><td><div align='center'><font color='grey'>".$row['date']."</font></div></td><td><div align='center'> ".$row['sender']."</div></td><td><div align='center'> ".$row['subject']."</div></td><td><div align='center'><input type='button' value='open' onClick='window.alert(\"On ".$row['date']." ".$row['sender']." wrote:\\n".$row['message']."\")'/></div></td><td><div align='center'><form  method='post'><input type='submit' value='delete' name='delete'/></form></div></td></tr>

";

}

echo '</table>'; //ends the table.
4

3 に答える 3

5

入力/送信ボタンから値を保存するには、このようなことを行うことができます。

<!-- your html form -->
<form action="POST">
    <input type='text' name='username' />
    <input type='text' value='submit' />
</form>



<?php 

// your php code

if($_POST && isset($_POST['username'])){

    $db = new \PDO('......'); // enter your db details

    $stmt = $db->prepare("INSERT INTO table (username) VALUES (?)");
    $result = $stmt->execute(array($_POST['username']);

    echo $result->rowCount() ? 'Username saved in db' : 'Unknown error occured'; 

}
于 2013-05-21T00:02:41.027 に答える
1

AJAX ライブラリを使用して、クエリを実行するサーバー側スクリプトに要求を発行します。これを Javascript の onClick() ハンドラーとして記述してください。さて、ボブはあなたのおじです!

于 2013-05-21T00:03:33.500 に答える