1

I'm trying to update some contents using angular on front-end and php in server side.

Here are the snippet or code used :

in main js, call for update :

updateinscription: function($params){
    var urlphp="http://localhost/cordova/mbacly/www/php/";
    var tournois={};   
    $http.get(urlphp+"saveinscription.php?data="+$params).success(function(data){
        console.log("retour "+data);

    });

here $params is the following json :

Object { user_id: "62", uname: "admin", tournois_id: "79", inscriptions_simple: "0", inscriptions_double: "1", inscriptions_mixte: "1", inscriptions_simple_serie: "Elite", inscriptions_double_serie: "A", inscriptions_mixte_serie: "B", inscriptions_double_partenaire_id: "64", 7 de plus… }

PHP saveinscription.php is the following :

    <?php
    require("config.php");
    if (isset($_GET['data'])) {
        echo "tato";
        $json = stripslashes($_GET['data']);
        echo $json;

        $data = json_decode($json, true);

        echo $data;
        $result = $data;
        switch ($data['type']) {
            // case "insert":
            // $query="INSERT INTO `jnew_tournois_tournois_inscriptions`(`tournois_inscriptions_uid`,`tournois_inscriptions_tid`,`tournois_inscriptions_simple`,`tournois_inscriptions_double`,`tournois_inscriptions_mixte`,`tournois_inscriptions_simple_serie`,`tournois_inscriptions_double_serie`,`tournois_inscriptions_mixte_serie`,`tournois_inscriptions_double_partenaire`,`tournois_inscriptions_mixte_partenaire`,`tournois_inscriptions_double_partenaire_id`,`tournois_inscriptions_mixte_partenaire_id`,`tournois_inscriptions_double_partenaire_club`,`tournois_inscriptions_mixte_partenaire_club`,`tournois_inscriptions_comment`) VALUES($data['uid'],$data['tid'],$data['inscriptions_simple'],$data['$inscriptions_double'],$data['$inscriptions_mixte'],'$data['serie_simple']','$data['serie_double']','$data['serie_mixte']','$data['partenaire_double']','$data['partenaire_mixte']','$data['partenaire_double_id']','$data['partenaire_mixte_id']','$data['partenaire_double_club']','$data['partenaire_mixte_club']','$data['comment']')";
            // break;
        case 'update':
            $query = "UPDATE `jnew_tournois_tournois_inscriptions` SET tournois_inscriptions_simple=".$data['inscriptions_simple'].",";
            $query.="tournois_inscriptions_double=".$data['inscriptions_double'].",";
            $query.="tournois_inscriptions_mixte=".$data['inscriptions_mixte'].",";$query.="tournois_inscriptions_simple_serie='".$data['serie_simple']."',";
            $query.="tournois_inscriptions_double_serie='".$data['serie_double']."',";
            $query.="tournois_inscriptions_mixte_serie='".$data['serie_mixte']."',";

            $query.="tournois_inscriptions_double_partenaire='".$data['partenaire_double']."',";
            $query.="tournois_inscriptions_mixte_partenaire='".$data['partenaire_mixte']."',";
            $query.="tournois_inscriptions_double_partenaire_id=".$data['partenaire_double_id'].",";
            $query.="tournois_inscriptions_mixte_partenaire_id=".$data['partenaire_mixte_id'].",";
            $query.="tournois_inscriptions_double_partenaire_club='".$data['partenaire_double_club']."',";
            $query.="tournois_inscriptions_mixte_partenaire_club='".$data['partenaire_mixte_club']."',";
            $query.="tournois_inscriptions_comment='".$data['$comment']."' WHERE tournois_inscriptions_id=".$data['tiid'];

            $result. = $query;

            break;
        case "delete":
            $query = "DELETE FROM `jnew_tournois_tournois_inscriptions` where tournois_inscriptions_tid=".$data['tid']." and tournois_inscriptions_uid=".$data['uid'];
            break;
        }
        //  debug.print($query);
        try {
            $bdd = new PDO($db_config['SGBD'] .':host='. $db_config['HOST'] .';dbname='. $db_config['DB_NAME'], $db_config['USER'], $db_config['PASSWORD'], $db_config['OPTIONS']);
            $reponse = $bdd->prepare($query);
            $reponse->execute();
        //      $arr = $reponse->fetchAll(PDO::FETCH_ASSOC);        
            } catch(Exception $e) {
                // En cas d'erreur, on affiche un message et on arrête tout
                $result.=$query . "zorro<br>" . $e->getMessage();
                debut.print($result);   
            }

            $bdd=null;

            echo $result = json_encode($arr);
    }
    ?>

I get this in firefox console :

retour 
tato[object Object]zorro<br>SQLSTATE[42000]: Syntax error or access violation: 1065 Query was emptynull

As $query is not null and my echo of json_decode doesn't show anything, I guess something is wrong there, but $json seems to have an object, so I guess json_decode is not working, but I can't figure out why.

Any help welcome !

1 Answer 1

1

Before sending $params to your update function, convert it to an url encoded string:

encodeURIComponent(JSON.stringify($params))
Sign up to request clarification or add additional context in comments.

3 Comments

PS: for future users with the same problem, please mark the answer as correct so it gets the green check mark :-)
i did, but as i'm new, i need few more one to have it shown public :)
@Nightf Unlike upvoting, you can always acccept an answer no matter your reputation

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.