I can't write a php file for my MultipartEntity Android app



  • public static void executeMultipartPost(String url, String id, String field1, String field2){
        try {
            HttpClient client = new DefaultHttpClient();
            HttpPost poster = new HttpPost(url);
            MultipartEntity entity = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE);
            entity.addPart("name", new StringBody(field1));
            entity.addPart("id", new StringBody(id));
            entity.addPart("text", new StringBody(field2));
            poster.setEntity(entity );
    
            client.execute(poster, new ResponseHandler<Object>() {
                public Object handleResponse(HttpResponse response) throws ClientProtocolException, IOException {
                    HttpEntity respEntity = response.getEntity();
                    String responseString = EntityUtils.toString(respEntity);
                    // do something with the response string
                    return null;
                }
            });
        } catch (Exception e){
            //do something with the error
        }
    }
    

    This is my function to add a comment.

    The problem is he doesn't add

    My php file.

        <?php
    

    try{
    $handler = new PDO('mysql:host=;dbname=', '', '' );
    $handler->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    }catch(Exception $e){
    echo $e->getMessage();
    die();
    }

    $name = $_POST["name"];
    $page_id = $_POST["id"];
    $text_comment = $_POST["text"];

    $equery = $handler -> query("INSERT INTO Commnets (name, page_id, text_comment) VALUES ('$name', '$page_id', '$text_comment')");
    $records = array();

    I think the problem is php.

    Can you write me right?



  • I'll explain, however,

    <?php
    try {
    // Тут вы опубликовали атрибуты доступа к базе. Так делать не стОит.
    // Поскольку на этом сайте хранятся версии редактируемого контента
    // у вас остается один выход - поменять пароль (может даже и имя)
        $handler = new PDO('mysql:host=***;dbname=***', '***', '***' );
        $handler->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);  
    } catch (Exception $e){
        echo $e->getMessage();
        die();
    }
    

    $name = $_POST["name"];
    $page_id = $_POST["id"];
    $text_comment = $_POST["text"];

    // В запросе вы возможно опечатались и вместо Commnets следует написать
    // Comments. Кроме того сделаем подготовленный запрос и внедрим в него
    // значения через плейсхолдеры и обработку запроса сделаем внутри блока try
    try {
    $equery = $handler->prepare("INSERT INTO Commnets
    (name, page_id, text_comment)
    VALUES
    (:name, :page_id, :text_comment)");
    $equery->bindValue(':name', $name);
    $equery->bindValue(':page_id', $page_id);
    $equery->bindValue(':text_comment', $text_comment);
    $equery->exec();
    } catch (Exception $e){
    echo $e->getMessage();
    die();
    }
    $records = array();




Suggested Topics

  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2