Ver Mensaje Individual
  #2 (permalink)  
Antiguo 22/01/2016, 22:10
Avatar de chulifo
chulifo
 
Fecha de Ingreso: abril-2009
Ubicación: perdido en codigos del PHP, pero aprendo rapido!
Mensajes: 524
Antigüedad: 15 años, 8 meses
Puntos: 18
Respuesta: Insertar consulta mysql con php y jquery

Cita:
Iniciado por StReO Ver Mensaje
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;
	}
}
?>
No funciona porque tu mismo haces que no funcione .

Código PHP:
Ver original
  1. if($_POST['mensajechat'])

tienes que enviar también esta variable.
__________________
Solo soy un simple fanático que mata el tiempo de la mejor manera.