2016-10-02 58 views
0

我试过了所有的可能性。我无法读取php.Am中的json对象,我正确地将json数据传递给PHP?我已经使用$ _POST,$ _ REQUEST和json_decode来获取data.Nothing作品。如何获取PHP中的json数据? Controller.js如何将json数据从角度js传递到php

if (userValid==true) 
       { 
        var data = {"firstName":user.firstName, 
         "lastName":user.lastName, 
         "mobileNumber":user.mobileNumber, 
         "email":user.email, 
         "type":user.type, 
         "password":user.password 
         }; 
        $http.post("http://localhost/insertUser.php",data)          
         .then(function(response){ 
          alert(response.data); 
         }); 
      } 

insertUser.php

<?php 
header("Access-Control-Allow-Origin: *"); 
header("Content-Type: application/json; charset=UTF-8"); 

    $dbhost = 'localhost'; 
    $dbuser = 'root'; 
    $dbpass = ''; 
    $conn = mysql_connect($dbhost, $dbuser, $dbpass); 

    if(! $conn) { 
     die('Could not connect: ' . mysql_error()); 
    } 

    $user = json_decode(file_get_contents("php://input")); 
    $firstName = mysql_real_escape_string($user->firstName); 
    $lastName = mysql_real_escape_string($user->lastName); 
    $mobileNumber = mysql_real_escape_string($user->mobileNumber); 
    $email = mysql_real_escape_string($user->email); 
    $type = mysql_real_escape_string($user->type); 
    $password = mysql_real_escape_string($user->password); 



     $sql = "INSERT INTO user ". 
     "VALUES ('".$firstName."','".$lastName."','".$mobileNumber."','".$email."','".$type."','".$password."')"; 
    mysql_select_db('user_details'); 
    $retval = mysql_query($sql, $conn); 

    if(! $retval) { 
     die('Could not enter data: ' . mysql_error()); 
    } 

    echo "Entered data successfully\n"; 

    mysql_close($conn); 
?> 
+0

你得到的任何错误? –

+0

@ujjwal:没有。我是否正确地在js $ http服务中传递json并在php中正确读取它? – Vimal

回答

0
<?php 
// header("Access-Control-Allow-Origin: *"); 
// header("Content-Type: application/json; charset=UTF-8"); 

$host  = "localhost"; 
$username = 'root'; 
$password = ''; 
$db_name = 'user_details'; 
$connection = mysqli_connect("$host", "$username", "$password","$db_name") or die("cannot connect"); 
if ($connection) { 
} else { 
die('Could not connect: ' . mysqli_error()); 
} 
$user   = json_decode(file_get_contents("php://input")); 
$firstName = $user->firstName; 
$lastName  = $user->lastName; 
$mobileNumber = $user->mobileNumber; 
$email  = $user->email; 
$type   = $user->type; 
$password  = $user->password; 
$sql   = "INSERT INTO user(firstname,lastname,mobile,email,type,password)VALUES('$firstName','$lastName','$mobileNumber','$email','$type','$password')"; 
$result  = mysqli_query($connection, $sql); 
if (!$result) { 
die('Could not enter data: ' . mysql_error()); 
} else { 
echo "Entered data successfully\n"; 
} 
?> 

以此作为你的PHP。希望它会工作。让我知道它是否工作,并根据您的表格更改列名称。谢谢:)

相关问题