Buenas tengo un quebradero de cabeza enorme, no se apenas de javascript y menos de jquery xd.
Tengo un chat donde escribo un mensaje, y envio datos con jquery a un archivo php, el script funciona perfectamente sin jquery, pero cuando envio por jquery no se hace el insert, se recarga la pantalla y no veo cual puede ser el problema.
Código:
<form method="post">
<textarea name="mensajechat" id="mensajechat"></textarea>
<input type="hidden" name="usuario" id="usuario" value="<?php echo $_SESSION['usuario_email']; ?>">
<input type="hidden" name="destinatario" id="destinatario" value="[email protected]">
<button class="btn btn-info" onClick="javascript:EnviarDatos();">Enviar</button>
</form>
<div id="#mensaje"></div>
<script type="text/javascript">
function EnviarDatos(){
var mensaje = document.getElementById('mensajechat').value;
var usuario = document.getElementById('usuario').value;
var destino = document.getElementById('destinatario').value;
$.ajax({
type:'POST',
url:"enviarchat.php",
data:('mensaje='+mensaje+'&usuario='+usuario+'&destino='+destino),
success: function(respuesta){
if(respuesta==1){
$('#mensaje').html('Tu mensaje se ha enviado correctamente');
}
else{
$('#mensaje').html('Tu mensaje no se ha enviado');
}
}
})
}
</script>
</div>
</div>
</div>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"></script>
Ese seria el codigo de la pagina principal, y el enviarchat.php es el siguiente
Código:
<?php
require('inc/dbconnect.php');
if($_POST['mensajechat'])
{
$StrMensaje =$_POST['mensajechat'];
$StrUsuario =$_POST['usuario'];
$StrDestinatario =$_POST['destinatario'];
$FechaMensaje=date("Y-m-d H:i:s");
$InserSql = sprintf("INSERT INTO `db599871615`.`LoL_Mensajes` (`Nid`, `StrUsuario`, `StrDestinatario`, `Date`, `StrMensaje`) VALUES (NULL, '".$StrUsuario."', '".$StrDestinatario."', '".$FechaMensaje."', '".$StrMensaje."');");
if($Resultado = mysqli_query($connect,$InserSql)){
echo 1;
}
}
?>