Estou inserindo registros no banco de dados com ionic, mais está me retornando um erro vindo da api, vou compartilhar toda a estrutura de inserir o dado para melhor entendimento!
primeiro a api de inserir encarregada de inserir os dados:
include 'conexao.php';
$dados = file_get_contents("php://input");
$objDados = json_decode($dados);
$name = $objDados->name;
$nivel = 2;
$email=$objDados->email;
$password = $objDados->password;
$sexo=$objDados->sexo;
$data_nasc=$objDados->data_nasc;
$telefone=$objDados->telefone;
$endereco=$objDados->endereco;
$cidade=$objDados->cidade;
$uf=$objDados->uf;
$complemento=$objDados->complemento;
$name = stripslashes($name);
$nivel = stripcslashes($nivel);
$email = stripcslashes($email);
$password = stripslashes($password);
$sexo=stripcslashes($sexo);
$data_nasc=stripcslashes($data_nasc);
$telefone=stripcslashes($telefone);
$endereco=stripcslashes($endereco);
$cidade=stripcslashes($cidade);
$uf=stripcslashes($uf);
$complemento=stripcslashes($complemento);
$name = trim($name);
$nivel = trim($nivel);
$email = trim($email);
$password = trim($password);
$sexo=trim($sexo);
$data_nasc=trim($data_nasc);
$telefone=trim($telefone);
$endereco=trim($endereco);
$cidade=trim($cidade);
$uf=trim($uf);
$complemento=trim($complemento);
$inserir = "insert into users values(null,
'".$name."','".$nivel."','".$email."','".$password."','".$sexo."','".$data_nasc."','".$telefone."','".$endereco."','".$cidade."','".$uf."','".$complemento."')";
$resultado_inserir = mysqli_query($conexao, $inserir);
if(!$resultado_inserir){
$dados = array('message' => "Não foi possivel cadastrar o cliente");
echo json_encode($dados);
}else{
$dados = array('message' => "Cliente Inserido");
echo json_encode($dados);
}
mysqli_close($conexao);
Agora o provider no ionic:
criarConta(parans) {
let headers = new Headers({ 'Content-Type' : 'application/x-www-form-urlencoded' });
return this.http.post(this.API_URL + "inserirUser.php", parans, {
headers:headers,
method:"POST"
}).map(
(res:Response) => {return res.json();}
);
}
Em seguida a minha create-account.ts eu fiz assim:
export class CreateAccountPage {
model: User;
constructor(
public navCtrl: NavController,
public navParams: NavParams,
private provider: UsersProvider,
) {
this.model = new User();
}
criarConta(){
this.provider.criarConta(this.model)
.subscribe(
data=>{
console.log(data.mensage);
},
err=>console.log(err)
);
}
}
export class User {
name: string;
email: string;
password: string;
sexo: string;
data_nasc: string;
telefone: string;
endereco: string;
cidade: string;
uf: string;
complemento: string;
}
e na minha pagina de enviar os dados eu fiz assim:
<ion-content padding>
<ion-list>
<ion-item>
<ion-label floating>Nome completo</ion-label>
<ion-input type="text" [(ngModel)]="model.name"></ion-input>
</ion-item>
<ion-item>
<ion-label>Sexo</ion-label>
<ion-select [(ngModel)]="model.sexo">
<ion-option value="masculino">Masculino</ion-option>
<ion-option value="feminino">Feminino</ion-option>
</ion-select>
</ion-item>
<ion-item>
<ion-label>Data nascimento</ion-label>
<ion-datetime displayFormat="MMM DD YYYY" [(ngModel)]="model.data_nasc"></ion-datetime>
</ion-item>
<ion-item>
<ion-label floating>Endereço</ion-label>
<ion-input type="text" [(ngModel)]="model.endereco"></ion-input>
</ion-item>
<ion-item>
<ion-label floating>UF</ion-label>
<ion-input type="text" [(ngModel)]="model.uf"></ion-input>
</ion-item>
<ion-item>
<ion-label floating>Cidade</ion-label>
<ion-input type="text" [(ngModel)]="model.cidade"></ion-input>
</ion-item>
<ion-item>
<ion-label floating>Telefone</ion-label>
<ion-input type="text" [(ngModel)]="model.telefone"></ion-input>
</ion-item>
<ion-item>
<ion-label floating>Complemento</ion-label>
<ion-input type="text" [(ngModel)]="model.complemento"></ion-input>
</ion-item>
<ion-item>
<ion-label floating>Usuário/E-mail</ion-label>
<ion-input type="text" [(ngModel)]="model.email"></ion-input>
</ion-item>
<ion-item>
<ion-label floating>Senha</ion-label>
<ion-input type="password" [(ngModel)]="model.password"></ion-input>
</ion-item>
</ion-list>
<button ion-button color="danger" (click)="criarConta()">Cadastrar</button>
<button ion-button color="default" (click)="openLoginPage()">Já sou cadastrado</button>
</ion-content>
Até ai tudo ok, mais na hora q executo para inserir os dados ele me retorna o erro de mensagem q eu adicionei na api, e não envia os dados para o banco, alguem para me ajudar a identificar oque está acontecendo.
O erro no network:
Agradeço!