I successfully registered on my android app. But somehow, I really want to update the user information I registered by using PHP. But, I failed. What is the problem with this code I worked on.
<?php
$host = 'example.com';
$user = 'username';
$pass = 'password';
$db = 'database';
$con = mysqli_connect($host, $user, $pass, $db);
if (!$con) {
printf("Connection failed: %s
", mysqli_connect_error());
exit();
}
$query ="UPDATE user_info VALUES (?, ?, ?, ?, ?, ?)"; // make this query into "update query"
$statement = mysqli_prepare($con, $query);
if($statement === FALSE){ die(mysqli_error($link)); }
mysqli_stmt_bind_param($statement, "isssss" ,$UserID, $LastName, $FirstName, $Username, $EmailAddress, $Password);
$LastName = $_POST["LastName"];
$FirstName = $_POST["FirstName"];
$Username = $_POST["Username"];
$EmailAddress = $_POST["EmailAddress"];
$Password = $_POST["Password"];
mysqli_stmt_execute($statement);
$response = array();
$response["success"] = true;
echo json_encode($response);
?>
By the way, I completed this problem by simplifying the problem.
You should set the values of variables BEFORE bind them :
<?php
//I remove your credentials
$con = mysqli_connect($host, $user, $pass, $db);
if (!$con) {
printf("Connection failed: %s
", mysqli_connect_error());
exit();
}
$query ="UPDATE user_info SET lastname = ? AND firstname = ? AND username = ? AND emailaddress = ? AND password = ? WHERE userid = ?"; // make this query into "update query"
$statement = mysqli_prepare($con, $query);
if($statement === FALSE){ die(mysqli_error($link)); }
$LastName = $_POST["LastName"];
$FirstName = $_POST["FirstName"];
$Username = $_POST["Username"];
$EmailAddress = $_POST["EmailAddress"];
$Password = $_POST["Password"];
mysqli_stmt_bind_param($statement, $LastName, $FirstName, $Username, $EmailAddress, $Password, $UserID);
mysqli_stmt_execute($statement);
$response = array();
$response["success"] = true;
echo json_encode($response);
EDIT $UserID
is not defined. And your UPDATE statement was complety false