0

PHPで同様のタスクを実行する方法があるかどうかを確認したいと思います。送信ボタンがクリックされたときに、javascript を使用して「boldStuff」ID の文字列を別の文字列 (この場合はユーザー名) で更新しました。重要な概念は、ページを更新せずに「boldStuff」を含むページまたはセクションが更新されることです。基本的に、誰かが送信ボタンをクリックするたびにページを更新せずに、PHP で同様の機能を実行したいと考えています。どんな助けでも大歓迎です。

<script type="text/javascript">

function displayMessage(firstName, lastName) {
document.getElementById('boldStuff').innerHTML = firstName + " " + lastName; //prints

}
</script>

<p>Welcome to my website, <b id='boldStuff'>dude</b> </p> 
</br>

<div id="hg">

<form>
First name:
<input type="input" name="yourName" /> </br>
First name:
<input type="input" name="yourLast" /> </br>
<input
type="button"
onclick="javascript:displayMessage(form.yourName.value, form.yourLast.value)"
value="Display Message" />
</form>
</div>
</body>
</html>
4

2 に答える 2

1

PHPは、ブラウザーではなくサーバー上で実行されます。ブラウザにロードされたページと直接対話する方法はありません。PHPはページを生成し、それをブラウザーに送信して表示することができますが、これで話は終わりです。リロードせずにページを操作したい場合は、クライアント側のテクノロジーが必要です。これは、99.9%のケースでJavascriptを意味します。

サーバーから何かが必要な場合は、Javascriptを使用してPHPスクリプトの結果を取得し、リロードせずにページに挿入できますが、PHPが関与している場合でも、クライアント側のアクションはすべてJavascriptによって実行されます。

于 2012-05-31T05:25:31.413 に答える
0

html ファイルは次のようになります。

<html>
<head>
<script type="text/javascript" src="jquery-1.7.1.min.js"></script>
<script type="text/javascript" >
$(document).ready(function(){
    $("form#submit").submit(function() {
    // we want to store the values from the form input box, then send via ajax below
    var fname     = $('#fname').attr('value');
    var lname     = $('#lname').attr('value');
    $.ajax({
            type: "POST",
            url: "ajax.php",
            data: "fname="+ fname +"&amp; lname="+ lname,
            success: function(){
                $('form#submit').hide(function(){$('div.success').fadeIn();});

            }
        });
    return false;
    });

});
</script>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1255">
<title>Insert title here</title>
</head>
<body>
<form id="submit" method="post">
<fieldset><legend>Enter Information</legend> 
<label for="fname">Client First Name:</label>
 <input id="fname" class="text" type="text" name="fname" size="20" />
  <label for="lname">Client Last Name:</label> 
  <input id="lname" class="text" type="text" name="lname" size="20" /> 
  <button class="button positive">  Add Client </button>
  </fieldset>
</form>
<div class="success" style="display: none;">Client has been added.</div>
</body>
</html>

および ajax.php

<?php

    include ("../../inc/config.inc.php");

    // CLIENT INFORMATION
    $fname        = htmlspecialchars(trim($_POST['fname']));
    $lname        = htmlspecialchars(trim($_POST['lname']));

    $addClient  = "INSERT INTO clients (fname,lname) VALUES ('$fname','$lname')";
    mysql_query($addClient) or die(mysql_error());

?>

[ここにリンクの説明を入力][1] からこのコードをコピーします

[1]: http://www.ryancoughlin.com/2008/11/04/use-jquery-to-submit-form/ でテストしました。

于 2012-05-31T06:20:35.983 に答える