Iosif Petrov Ответов: 2

Почему метод$. post не отправляет данные в PHP-файл


Я пытаюсь отправить данные формы в php-файл, где они будут отправлены в мою базу данных, с помощью метода $.post. Вот код:
HTML:
<div id="chatlogs" class="hello" style="width: 200px; text-align: center">
		Loading Chats, Please Wait!!!
	</div>
<form method="post" name="form1" class= "mfo" action="">
	
<!--     <a href="#" name="set">Submit</a> -->
	<!-- <input type="button" name="set" value="SendMessage" onclick="submitChat()"> -->
	<table border="1" align="center">
	<tbody><tr>
	<td>Enter ChatName:</td> <td></td>
	</tr>
	<tr>
	<td><label for="msg">Message:</label></td> 
	<td><textarea name="msg"  style="width: 400px; height: 170px;"></textarea></td>
	</tr>
	<tr>
	<td colspan="2"><input name = "button" type = "Submit"

                              id = "update" value = "SendMessage" onclick="submitChat()">
    </td>
    </tr></tbody></table>
</form>


Что я уже пробовал:

Это метод$. post, который не работает. Я использую его, потому что не хочу, чтобы при отправке формы страница обновлялась.

<script type="text/javascript">
		function submitChat(){
			if (form1.msg.value=="") {
				alert("All fields are required!!!");
				return;
			} 
		$.post("insert.php", {
			msg=form1.msg.value;
		}, function (e) {
			e.preventDefault;
		});
		}
		$(document).ready(function(e){
			$.ajaxSetup({cache:false});
			setInterval(function() {$('#chatlogs').load('logs.php');}, 1000);
    	});

	</script>

2 Ответов

Рейтинг:
17

Peter Leow

Попробуй:

{msg : form1.msg.value}


Iosif Petrov

Спасибо, парень. Я совершенно забываю о ":". Спасибо!!

Рейтинг:
0

Iosif Petrov

Это и есть PHP-файл ?

<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
session_start();
$uname=$_SESSION['username'];
$msg=$_POST['msg'];
$servername = "localhost";
$user = "root";
$password = "";
$dbname = "chatbox";
$conn = mysqli_connect($servername, $user, $password, $dbname);
$sql = "INSERT INTO `logs`(`username`, `msg`) VALUES ('$uname','$msg')";
mysqli_query($conn, $sql);

}
?>


Richard Deeming

Если вы хотите обновить свой вопрос, чтобы добавить недостающую информацию, нажмите на ссылку "улучшить вопрос" в нижней части вашего вопроса.

НЕ опубликуйте свое обновление как "решение".