Bonjour,

sans mentir je viens de passer la journée dessus sans succès.... et j'ai parcouru les forums (si,si !!).

Explication :

je créé différents objets dans un canvas et j'aimerai sauvegarder les données pour retrouver plus tard les objets et leur position dans le canvas.

dans le javascript init.js :

$(function(){
    $('#saveCanva').on('click', function(e) {
        var dataArray = [];
        var matrixArray = [];
        for( i = 0; i < canvaContainer.getNumChildren(); i+=2){
            var child = canvaContainer.getChildAt(i);
            child.cache(0,0,child.getBounds().width, child.getBounds().height);
            dataArray.push(child.cacheCanvas.toDataURL());
            matrixArray.push(child.getMatrix());
            child.uncache();
        }
        for( i = 1; i < textContainer.getNumChildren(); i+=2){
            var child = textContainer.getChildAt(i);
            textArray.push(child.text);
            textMatrices.push(child.getMatrix());
        }

        var data = JSON.stringify(dataArray);
        var dataMatrix = JSON.stringify(matrixArray);

        $.ajax({
            url: '../planttt.php?cmd=sauv',
            type: 'POST',
            data: {data: data, dataMatrix: dataMatrix },
            success: function(res) {
                alert("The request has been successfully sent to the server");
            } ,
            error: function(err) {
                console.log(err);
            } ,
            dataType: 'json'
        });

        console.log(data);
        console.log(dataMatrix);

        return false;
    });
});

Le PHP planttt.php appelle la fonction :

<a href="planttt.php?cmd=sauv&amp;NumPano='.$_POST["Edit"].'" id="saveCanva">Sauvegarder</a>

et j'aimerai récupérer la variable dans le fichier planttt.php

if (isset($cmd) && ($cmd == "sauv"))   {

$data = json_decode( $_POST[ 'data' ] );
$dataMatrix = json_decode( $_POST[ 'dataMatrix' ] );

    echo $data;
    echo $dataMatrix;

$update = $bdd2->prepare("UPDATE $table_pano SET Pdata=:Pdata, Pdatamatrix=:Pdatamatrix WHERE (idPhoto=:idPhoto AND Pid=:Pid)");

        $update->execute(array(
          'Pdata' => $Pdata,
          'Pdatamatrix' => $Pdatamatrix,
          'idPhoto' => $_GET['NumPano'],
          'Pid' => $_SESSION["id_membre"]

          ));

        $update->closeCursor();

echo "<h3>La sauvegarde a bien &eacute;t&eacute; effectu&eacute;e !</h3>";

};

Je n'arrive pas à récupérer les variables dans le PHP....
Histoire de compliquer les choses, les variables sont TRES TRES longues....

1 réponse


Tu as vérifié si les données envoyés à ton script PHP étaient définies et non vides ?