[英]validate email Address using zf2. error message should be shown in the lable without refreshing the whole page
[英]New database elements only shown by refreshing the whole page
我已經為主頁設置了一個聊天框/聊天室,但是每次我提交一條將存儲在mysql數據庫中的消息時,我都必須刷新頁面才能在div框中查看所提交的消息。
div的代碼:
<form method="post" action="startseite.php">
<div id="message">
<input type="text" name="spind" value="" size="55" maxlength="90">
<button>Senden</button>
</div></form>
我的div容器的Javascript代碼:
<script type="text/javascript">
$(document).ready(function(){
$("#content").scrollTop($("#content")[0].scrollHeight);
$("button").click(function(){
var message = $("input").val();
var old = $("#content").html();
$("#content").scrollTop($("#content")[0].scrollHeight);
});
});
mysql數據庫代碼:
<?php
$verbindung = mysql_connect("localhost", "hallo", "123")
or die("Fehler im System");
mysql_select_db("hallo")
or die("Verbindung zur Datenbank war nicht erfolgreich");
$user = $_SESSION['username'];
$message = $_POST['spind'];
$eintrag = "INSERT INTO chat
(user, message)
VALUES
('$user', '$message')";
mysql_query($eintrag);
mysql_close($verbindung);
?>
當我想在提交新消息時自動在div上顯示新消息時,該怎么辦?
<script type="text/javascript">
$(document).ready(function(){
$("#content").scrollTop($("#content")[0].scrollHeight);
$("button").click(function(){
var message = $("input").val();
var old = $("#content").html();
$("#content").append(message);
$("#content").scrollTop($("#content")[0].scrollHeight);
});
});
您還可以將消息包裝在一些html代碼中,然后嘗試附加它。
假設所有內容都在一個文件中,這是發布消息后更新div框的一種方法。
startseite.php
<?php
$spind = '';
$verbindung = mysql_connect("localhost", "hallo", "123")
or die("Fehler im System");
mysql_select_db("hallo")
or die("Verbindung zur Datenbank war nicht erfolgreich");
if ( isset($_POST['spind']) ) {
$spind = $_POST['spind'];
$user = $_SESSION['username'];
$message = $spind;
$eintrag = "INSERT INTO chat
(user, message)
VALUES
('$user', '$message')";
mysql_query($eintrag);
mysql_close($verbindung);
}
?>
<div id="content">
<?php
$eintrag = "SELECT * FROM chat";
$mysql_content = mysql_query($eintrag);
while($into = mysql_fetch_array($mysql_content)) {
echo '<p><span style="font-variant:small-caps"><span style="font-size:1.5em"><b><span style="text-transform:capitalize">'.$into['user'].'</span> denkt: </b></span><span style="font-size:1.6em">'.$into['message'].'</span></span></p>';
}
?>
</div>
<form method="post" action="startseite.php">
<div id="message"><?=$spind?>
<input type="text" name="spind" value="" size="55" maxlength="90">
<button>Senden</button>
</div></form>
(當然,這里仍然缺少很多信息,例如數據庫安全性,session_start,會話檢查等,因此僅出於娛樂目的,而不是供公眾使用。:)在不了解其他要求的情況下,我認為XHR將是一種更為優雅的方法。 )
而且我不知道您為什么要在表單按鈕上附加事件並捕獲“ spind”和“ content”的值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.