Salut, j'essaie d'insérer le tableau JSON dans ma base de données MySQL. Je passe les données sous forme de mon iphone, j’ai converti les données au format json et je les transmets à mon serveur à l’aide de l’URL qui ne s’insère pas dans mon serveur.
Ce sont mes données JSON.
[{"nom": "0", "téléphone": "dsf", "ville": "sdfsdf", "email": "dsf"}, {"nom": "13123123", "téléphone": "sdfsdfdsfsd "," ville ":" sdfsf "," email ":" 13123123 "}]
Ceci est mon code PHP.
<?php
$json = file_get_contents('php://input');
$obj = json_decode($data,true);
//Database Connection
require_once 'db.php';
/* insert data into DB */
foreach($obj as $item) {
mysql_query("INSERT INTO `database name`.`table name` (name, phone, city, email)
VALUES ('".$item['name']."', '".$item['phone']."', '".$item['city']."', '".$item['email']."')");
}
//database connection close
mysql_close($con);
//}
?>
Mon code de connexion à la base de données.
<?php
//ENTER YOUR DATABASE CONNECTION INFO BELOW:
$hostname="localhost";
$database="dbname";
$username="username";
$password="password";
//DO NOT EDIT BELOW THIS LINE
$link = mysql_connect($hostname, $username, $password);
mysql_select_db($database) or die('Could not select database');
?>
S'il vous plaît dites où je me trompe dans le code ci-dessus. En gros, je ne suis pas un développeur php. Je suis un développeur d'applications mobiles. J'utilise donc le php en tant que script côté serveur. Dites-moi comment résoudre ce problème.
$json = file_get_contents('php://input');
$obj = json_decode($json,true);
Je pense que vous passez la mauvaise variable. Vous devez passer $json
dans json_decode
comme indiqué ci-dessus.
Il n'existe pas de variable telle que $data
. Essayer
$obj = json_decode($json,true);
Le repos a l'air bien. Si l'erreur persiste toujours, activez error_reporting
.
Le fichier source JSON est manquant. Créez un fichier JSON puis assignez-le à var data:
<?php
require_once('dbconnect.php');
// reading json file
$json = file_get_contents('userdata.json');
//converting json object to php associative array
$data = json_decode($json, true);
// processing the array of objects
foreach ($data as $user) {
$firstname = $user['firstname'];
$lastname = $user['lastname'];
$gender = $user['firstname'];
$username = $user['username'];
// preparing statement for insert query
$st = mysqli_prepare($connection, 'INSERT INTO users(firstname, lastname, gender, username) VALUES (?, ?, ?, ?)');
// bind variables to insert query params
mysqli_stmt_bind_param($st, 'ssss', $firstname, $lastname, $gender, $username);
// executing insert query
mysqli_stmt_execute($st);
}
?>