在执行php脚本时需要有关错误的帮助

时间:2014-11-09 20:40:28

标签: android rest

我在Android中有一个简单的注册表单,它在PHP中作为后端实现了REST。我试了5个小时,但我的代码没有用。

这是我在名为导游的文件夹中的两个文件:

db_connect.php

    <?php

        define("SERVER", '127.0.0.1');
        define("USER", 'root');
        define("PASSWORD", '');
        define("DB", 'tourist guide');


        $con = new mysqli(SERVER,USER,PASSWORD,DB);

        if ($con->connect_errno){
            die("Database Connection Failed");
            exit();

        }

index.php:

    <?php
            require_once('db_connect.php');

           $response = array();

           $result = "";


           function adduser($firstname, $lastname, $email, $password) {


            global $app;

            $req = $app->request();

            $firstname= $req->params['firstname'];

            $lastname= $req->params['lastname'];

            $email = $req->params['email'];

             $password = $req->params['password'];


    $stmt = $con->prepare("INSERT INTO user_accounts (first_name,last_name,email,password)VALUES (?,?,?,?)");

                        $stmt->bind_param('ssss', $firstname, $lastname, $email, $password); 

                        $stmt->execute();

                        $result = $stmt->close();


        }

                if($result){

                          $response["success"] = 1;

                          $response["message"] = "account successfully created.";

                          echo json_encode($response);

                }

                else{

                     $response["success"] = 0;

                     $response["message"] = "An error occurred during registration.";

                     echo json_encode($response);
                 }



            ?>

当我使用高级REST客户端测试它时,通过提供url:http://127.0.0.1/tourist guide/index.php/adduser和方法POST以及参数firstname=somename&lastname=name&email=a@b.gmail.com&password=101010

它显示以下回复:

{"success":0,"message":"An error occurred during registration."}

我的代码中是否有任何错误?我试了5个小时。请帮助。

2 个答案:

答案 0 :(得分:0)

你实际上在哪里称呼你的职能?

我所能看到的只是它的定义。 if else语句不在函数定义之内。应该是这样的吗?

此外,您的adduser函数不会返回可在函数外部使用的结果。

答案 1 :(得分:0)

从我看来,没有什么会调用addUser函数。 加上这个:

addUser($_GET['firstname'],$_GET['lastname'],$_GET['email'], $_GET['password']);

之前:

if($result){

如果您要添加更多功能,我建议使用一些框架来使后端更具结构性。例如Zend,Zend2。有很多选择......