Я построил простой веб-чат с использованием jquery, затем я реализовал сумматор значков, дело в том, что при передаче через Ajax текст во входных данных с иконками иногда добавляет изображения, иногда нет, например, при отправкеэто работает только для значков, но если, например, я пишу текст и даю пробелы, он больше не появляется.
Я использую для текста contenteditable = "" div, а затем я читаю его через переменную js, всехорошо, пока я не попытаюсь передать параметр
$( "#send" ).click(function() {
var mensagem = document.getElementById("inputx").innerHTML;
//var mensagem = mensagem.replace(/[^a-z0-9\s]/gi, '').replace(/[_\s]/g, '-')
var username = "<?php echo $_SESSION['username'] ?>";
$.ajax({
type: 'POST',
url: 'scripts/insert_chat.php',
data:'username='+username+'&mensagem='+mensagem,
success: function(){
// handle response here.
// you can still access the open variable here!
}
});
});
Это insert_chat.php:
<?php
require_once("../configs/database.php");
$connect = new mysqli($config['database']['host'],$config['database']['user'],$config['database']['pass'],$config['database']['db']);
global $connect;
$mensagem = $_POST['mensagem'];
$url = "http://milestone.gm-tests.xyz";
/*$mensagem = str_replace(array('"..','png/"'), array("..","png"), $mensagem);
$mensagem = str_replace('\"','', $mensagem);
*/
$email = $_POST['username'];
$getu = $connect->query("SELECT * FROM users WHERE email = '$email'");
$fetch = $getu->fetch_array(MYSQLI_ASSOC);
$username = $fetch['username'];
$user_id = $fetch['id'];
$insert = $connect->prepare("INSERT INTO chat
(username,user_id,mensagem)
VALUES(?,?,?)");
$insert->bind_param("sis", $username,$user_id,$mensagem);
if($insert->execute()){
}else{
echo $connect->error;
}