Merhaba,
basit bir chat uygulaması kodlamaya çalışıyorum. Mesajları her 1 sny de bir çekmesini ayarladım ajax ile. Aynı şekilde post gönderirken sayfayı yenilememesi için de ajax ve js kullanmaya çalıştım ancak şöyle bir hata alıyorum ;
Kodlarım :
index.php 'de ki kısım <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="./mesajgonder.js?5"></script>
<script>
setInterval(function() {
updateCounter();
}, 1000*1); // 1sn
function updateCounter() {
$.ajax({
url: 'ajax-mesaj.php',
success: function(output) {
$('#ajaxmesaj').html(output);
}
});
}
</script>
<text id="ajaxmesaj" class="ajaxmesaj"><font color="gray">Yükleniyor...</font></text>
</ul>
</div>
<br /><br />
<hr>
<form id="myForm" method="post">
<textarea data-emoji-picker="true" id="mesaj" name="mesaj" placeholder="Mesajınızı buraya yazınız"></textarea>
<input name="user_name" value="<?php echo $user_name; ?>" type="hidden" id="user_name">
<input name="user_id" value="<?php echo $user_id; ?>" type="hidden" id="user_id">
<p align="right" >
<button type="button" class="mesajgonder" onclick="SubmitFormData();" id="submitFormData" value="Submit">Gönder</button>
</p>
</form>
<div id="results">
</div> mesajgonder.js
function SubmitFormData() {
var mesaj = $("#mesaj").val();
var email = $("#user_id").val();
var phone = $("#user_name").val();
$.post("mesajgonder.php?3", { mesaj: mesaj, user_id: user_id, user_name: user_name },
function(data) {
$('#results').html(data);
$('#myForm')[0].reset();
});
}mesajgonder.php <?php
include_once'config/Database.php';
include_once'config/ParseProfile.php';
?>
<?php
$user_id = $_POST['user_id'];
$user_name = $_POST['user_name'];
$s_mesaj = $_POST['mesaj'];
$db->exec("SET names utf8");
if (empty($s_mesaj)) {
echo "Mesaj Boş";
die();
}
try {
$baglanti = new PDO("mysql:host=localhost;dbname=SANSUR", "SANSUR ", "SANSUR ");
$baglanti->exec("SET NAMES utf8");
$baglanti->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sorgu = $baglanti->exec("UPDATE users SET mesaj_sayi = mesaj_sayi +1 WHERE id=".$user_id."");
$sorgu = $baglanti->prepare("INSERT INTO mesajlar(user_id, user_name, mesaj) VALUES(?, ?, ?)");
$sorgu->bindParam(1, $user_id, PDO::PARAM_STR);
$sorgu->bindParam(2, $user_name, PDO::PARAM_STR);
$sorgu->bindParam(3, $s_mesaj, PDO::PARAM_STR);
$sorgu->execute();
echo "Mesaj Gitti";
} catch (PDOException $e) {
die($e->getMessage());
}
$baglanti = null;
?>
Sorun nerede? nasıl düzeltebilirim yardımcı olabilir misiniz?
Şimdiden teşekkürler