2016-10-02 127 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。希望它會工作。讓我知道它是否工作,並根據您的表格更改列名稱。謝謝:)