最近、AJAX の学習を開始し、ex で見られるようにコメント セクションを作成しようとしています。送信されたコメントを読み込むために必要なページの更新がない youtube。ここに私がこれまでに持っているものがあります:
HTML:
<head><script src="JS/AJAX.js"></script>
<body>
<form method="post" action="">
User: <input type="text" id="name" /><br>
Comment:<br>
<textarea rows="5" cols="50" wrap="on" id="comment></textarea><br>
<button id="submit">Submit</button>
</form>
<h3>Comments go here:</h3>
<div id="commentarea"></div>
</body>
ページを更新せずにデータベースにコメントを挿入する方法がわかりません。アクションとしてinsert.php(フィールドからデータベースにデータを挿入する)を使用すると、ページが更新されます。
JS/AJAX (現時点では XMLHttpRequest(); を使用しており、ブラウザーを見つけるための try および catch ブロックは含まれていません):
function ajaxFunction(){
var ajaxRequest = new XMLHttpRequest();
ajaxRequest.onreadystatechange = function(){
if(ajaxRequest.readyState == 4){
document.getElementById("commentarea").innerHTML = ajaxRequest.responseText;
}
}
ajaxRequest.open("GET","fetch-data.php",true);
ajaxRequest.send(null);
}
PHP (フェッチ-data.php):
<?php
$con = mysql_connect("localhost","root","") or die(mysql_error());
$mysql_select_db('localh',$con);
$query = mysql_query("SELECT User, UserComment FROM content");
if(!$query){
die(mysql_error());
}
while($row = mysql_fetch_array($query)){
echo "<h3>".$row['User']."</h3>"."<br>";
echo "<p>".$row['UserComment']."</p>";
}
mysql_free_result($query);
mysql_close($con);
?>
個別にロードするか、「include」を使用して、フェッチ プロセスが機能することを示します。
送信を押した後にこれを理解したので、コメントとユーザーをデータベースに挿入する必要があります。次に、ajax は fetch-data スクリプトを使用してデータを取得し、それを ID "commentarea" の div に追加する必要があります。これがどのように機能するのか、より正確には、フォームから ajax 関数を呼び出す方法がわかりません。