2017-03-11 5 views
0

J'utilise la bibliothèque Gridstack pour créer un tableau de bord. Les widgets x, y, width et height peuvent être mis dans un json, j'essaye de sauver ce json dans MySQL.json à mysql a cessé de fonctionner

J'ai obtenu le tableau json pour entrer dans une table en MySQL en appuyant sur un bouton pour travailler, quand j'étais à mon université. Quand je suis rentré chez moi, ça a cessé de fonctionner. J'utilise PHP et MySQL.

Le premier problème était que la ligne ci-dessous a cessé de fonctionner (c'était bien avant que je rentre à la maison, n'a pas touché le code).

$data = $_GET['name']; 

a dû être changé à ceci:

$data = isset($_GET['name']); 

Aucune idée pourquoi. Aussi le reste du PHP a cessé de fonctionner. Pas d'erreurs, ne fait rien. Ce n'est pas le script avec lequel j'ai un problème. Tout le Javascript fonctionne très bien.

Reste du code:

$('#save').click(function(){ 
     var res = _.map($('.grid-stack .grid-stack-item:visible'), function (el) { 
el = $(el); 
var node = el.data('_gridstack_node'); 
return { 
    id: el.attr('data-custom-id'), 
    x: node.x, 
    y: node.y, 
    width: node.width, 
    height: node.height 
}; 
window.location.href = "index.php?string=" + JSON.stringify(res); 
}); 
<?php 
$connect = mysqli_connect("localhost", "root", "", "widgetCollection"); 


$data = isset($_GET['string']); 
//$data = $_POST['variable']; 

    $array = json_decode($data, true); 

    foreach((array)$array as $row) { 
    $sql = "INSERT INTO grids(x, y, width, height) VALUES('".$row["x"]."', '".$row["y"]."', '".$row["width"]."', '".$row["height"]."');"; 

    mysqli_query($connect, $sql); 
    } 
    ?> 
    alert(JSON.stringify(res)); 

    }); 

Répondre

0

Isset vous permet de tester l'existence d'une clé dans un tableau, et renvoie une valeur booléenne.

Vous ne devriez pas utiliser isset comme ça.

Vous pouvez écrire à la place:

if (isset($_GET['name'])) { 
    $data = $_GET['name'] ; 
} 

qui permettra de tester l'existence du « nom » clé du tableau $ _GET et, si elle est trouvée, entrera dans le « si » état et définir la variable.

+0

Je reçois maintenant: Avis: Indéfini index: nom dans C: \ xampp \ htdocs \ widgets \ index.php à la ligne 98. Ligne 98 étant: $ array = json_decode ($ data, true); –