从android向mysql输入数据的php脚本不起作用

从android向mysql输入数据的php脚本不起作用,php,android,Php,Android,当我使用Post Url测试此脚本时,它返回错误500 internar server error 我上面的Url正确吗 <?php // response json $json = array(); /** * Registering a user device * Store reg id in users table */ if (isset($_POST["name"]) && isset($_POST["email"]) && isse

当我使用Post Url测试此脚本时,它返回错误
500 internar server error

我上面的Url正确吗

<?php

// response json
$json = array();

/**
 * Registering a user device
 * Store reg id in users table
 */
if (isset($_POST["name"]) && isset($_POST["email"]) && isset($_POST["regId"])) {
    $name = $_POST["name"];
    $email = $_POST["email"];
    $gcm_regid = $_POST["regId"]; // GCM Registration ID
    // Store user details in db
    include_once './db_functions.php';
    include_once './GCM.php';

    $db = new DB_Functions();
    $gcm = new GCM();

    $res = $db->storeUser($name, $email, $gcm_regid);

    $registatoin_ids = array($gcm_regid);
    $message = array("product" => "shirt");

    $result = $gcm->send_notification($registatoin_ids, $message);

    echo $result;
} else {
    // user details missing
}
?>


<?php

class DB_Functions {

private $db;

//put your code here
// constructor
function __construct() {
require_once dirname(__FILE__ ). '/db_connect.php';;

// connecting to db
$db = new DB_CONNECT();
}

// destructor
function __destruct() {

}

/**
 * Storing new user
 * returns user details
 */
public function storeUser($name, $email, $gcm_regid) {
    require_once dirname(__FILE__ ). '/db_connect.php';;

// connecting to db
$db = new DB_CONNECT();
    // insert user into database
    $result = mysql_query("INSERT INTO gcm_users(name, email, gcm_regid, created_at) VALUES('$name', '$email', '$gcm_regid', NOW())")or die(mysql_error());
    // check for successful store
    if ($result) {
        // get user details
        $id = mysql_insert_id(); // last inserted id
        $result = mysql_query("SELECT * FROM gcm_users WHERE id = $id") or die(mysql_error());
        // return user details
        if (mysql_num_rows($result) > 0) {
            return mysql_fetch_array($result);
        } else {
            return false;
        }
    } else {
        return false;
    }
}

/**
 * Get user by email and password
 */
public function getUserByEmail($email) {
    require_once dirname(__FILE__ ). '/db_connect.php';;

// connecting to db
$db = new DB_CONNECT();
    $result = mysql_query("SELECT * FROM gcm_users WHERE email = '$email' LIMIT 1");
    return $result;
}

/**
 * Getting all users
 */
public function getAllUsers() {
require_once dirname(__FILE__ ). '/db_connect.php';;

// connecting to db
$db = new DB_CONNECT();
    $result = mysql_query("select * FROM gcm_users");
    return $result;
}

/**
 * Check user is existed or not
 */
public function isUserExisted($email) {
    require_once dirname(__FILE__ ). '/db_connect.php';;

// connecting to db
$db = new DB_CONNECT();
    $result = mysql_query("SELECT email from gcm_users WHERE email = '$email'");
    $no_of_rows = mysql_num_rows($result);
    if ($no_of_rows > 0) {
        // user existed
        return true;
    } else {
        // user not existed
        return false;
    }
}

}

?>

当您从URL传递变量时,在PHP中,您必须将它们作为GET not POST处理。 更改此行:

    (isset($_POST["name"]) && isset($_POST["email"]) && isset($_POST["regId"]))
致:


您可以使用php中的请求从url接受变量。下面是代码

if (isset($_REQUEST["name"]) && isset($_REQUEST["email"]) && isset($_REQUEST["regId"])) {
// your code here.
}

你确定?波斯特应该在这里工作。我以前做过这件事,代码来自android hive教程,让我知道问题解决得很奇怪/这是一个非常愚蠢的错误。请结束这个问题
    (isset($_GET["name"]) && isset($_GET["email"]) && isset($_GET["regId"]))
if (isset($_REQUEST["name"]) && isset($_REQUEST["email"]) && isset($_REQUEST["regId"])) {
// your code here.
}