Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript PHP AJAX传递成功消息_Javascript_Php_Jquery_Ajax - Fatal编程技术网

Javascript PHP AJAX传递成功消息

Javascript PHP AJAX传递成功消息,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我试图将消息从php传递到ajax,但这不起作用,此外,如果字段为空,我希望显示类似“输入用户名”的内容 以下是我得到的: user.php <!-- conexion_user.php --> <?php $servername = "localhost"; $username = "root"; $password = ""; $dbname = "usuarios"; $nombre = $_REQUEST['nombre']; $email = $_REQUEST[

我试图将
消息
php
传递到
ajax
,但这不起作用,此外,如果字段为空,我希望显示类似“输入用户名”的内容

以下是我得到的:

user.php

<!-- conexion_user.php -->
 <?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "usuarios";

$nombre = $_REQUEST['nombre'];
$email = $_REQUEST['email'];
$mensaje = $_REQUEST['mensaje'];

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

$sql = "INSERT INTO `usuarios`.`usuarios` (`nombre`, `email`, `mensaje`) VALUES ('$nombre', '$email', '$mensaje')";


        if (($_POST['nombre']!="")
            &&($_POST['email']!="")
            &&($_POST['mensaje']!="")) {
            $conn->query($sql) === TRUE;
            echo "Se ha guardado en la BD.";

             $data = Array(
                'success' => true,
                'message' => 'Well done!',
                'data' => Array(
                        'nombre' => $_POST['nombre'].'1',
                        'email' => $_POST['email'].'1',
                        'mensaje' => $_POST['mensaje'].'1',
                    )
                );

            echo json_encode($data);
        }

        else{
            $res = Array(
                'success' => false,
                'message' => 'Error',
                );

            echo json_encode($res);
        }


$conn->close();
?>

1) 您需要将响应头设置为json。详情请参阅

2) 您正在编码数组而不是对象

$.ajax({
            url: '../php/conexion_user.php',
            type: 'POST',
            data: datos,
            dataType: 'json',
            success:function(data){
                console.log(data['success']); // check this
                console.log(data['message ']); // check this
                $('#dos').html('<p>' + data.message + '</p>');
                $('#exito').html('Inserción a usuario.').addClass('alert-success');
                $('#exito').fadeOut(3500);
            },
                        error: function(jqXHR,estado,error){
                            console.log(jqXHR);
                            console.log(estado);
                            console.log(error);
                        }
        });
$.ajax({
url:“../php/conexion_user.php”,
键入:“POST”,
数据:达托斯,
数据类型:“json”,
成功:功能(数据){
console.log(数据['success']);//检查此项
console.log(数据['message']);//检查此项
$('#dos').html(''+data.message+'

'); $('exito').html('Inserción a usuario')).addClass('alert-success'); $('exito')。渐弱(3500); }, 错误:函数(jqXHR、estado、error){ console.log(jqXHR); 控制台日志(estado); console.log(错误); } });
如果要返回对象而不是数组,请参考尝试使用
JSON.parse()


var parsedData=JSON.parse(数据)使用
控制台.log(数据.消息)并告诉我们您得到了什么?看起来您正试图打印一个数组或某种复合objectput
exit
json_encode
之后,放入
标题('Content-Type:application/json')file@PraveenKumar我什么也没看见,什么也没发生。。。它可以插入,但我通过控制台看不到任何东西。@Noman只是尝试了一下,没有运气。
<div align="center" >
<form id="formulario" method="post" class="form-horizontal">
            <div class="form-group">
                <legend>Usuario</legend>
            </div>
            <center>

            <input type="text" name="nombre" id="nombre" class="form-control" value="" placeholder="Nombre">
            <br>
            <input type="text" placeholder="Email" id="email" name="email"  class="form-control">
            <br>
            <input type="text" name="mensaje" id="mensaje" class="form-control" value="" placeholder="Ingrese Mensaje">
            <button type="submit" id="insert" name="insert" class="btn btn-primary">Submit</button>
    </form>
    <p id="dos"></p>
    </div>  
$.ajax({
            url: '../php/conexion_user.php',
            type: 'POST',
            data: datos,
            dataType: 'json',
            success:function(data){
                console.log(data['success']); // check this
                console.log(data['message ']); // check this
                $('#dos').html('<p>' + data.message + '</p>');
                $('#exito').html('Inserción a usuario.').addClass('alert-success');
                $('#exito').fadeOut(3500);
            },
                        error: function(jqXHR,estado,error){
                            console.log(jqXHR);
                            console.log(estado);
                            console.log(error);
                        }
        });