我有2个主键和1个外键的表。问题是当我想向表中插入数据时,但是发生了一些错误。
这是我的mysql关系表
数据类型PiorityPhonePerson是tinyint,CodePhonePerson是nchar。
这是我的php数据:
<?
include "new.php";
$ID_Person = $_POST['IDPerson'];
$Number_Phone_Person = $_POST['NumberPhonePerson'];
$Piority_Phone_Person = $_POST['PiorityPhonePerson'];
$Code_Phone_Person = $_POST['CodePhonePerson'];
$response = array();
if (isset($ID_Person) &&
isset($Number_Phone_Person) &&
isset($Piority_Phone_Person) &&
isset($Code_Phone_Person)
)
{
$query = "INSERT INTO T_Person_Phone
(
ID_Person,
Number_Phone_Person,
Piority_Phone_Person,
Code_Phone_Person
)
VALUES
(
(SELECT ID_Person FROM T_Person
where ID_Person = '$ID_Person'),
'$Number_Phone_Person',
'$Piority_Phone_Person',
'$Code_Phone_Person'
)
";
$hasil = sqlsrv_query($conn,$query,$response);
if($hasil)
{
$response["success"] = 1;
$response["message"] = "User successfully created.";
} else
{
$response["success"] = 0;
$response["message"] = "Eksekusi error.";
die( print_r( sqlsrv_errors(), true));
}
} else
{
$response["success"] = 0;
$response["message"] = "failed to save.";
}
// echoing JSON response
echo json_encode($response);
?>
当我尝试执行时,它无法插入到我的表中。 请帮帮我。
答案 0 :(得分:0)
在INSERT中查看您的查询如果您选择要为查询提供的值,那么这样做是没有意义的:
$query = "INSERT INTO T_Person_Phone (
ID_Person,
Number_Phone_Person,
Piority_Phone_Person,
Code_Phone_Person
)
VALUES(
'$ID_Person',
'$Number_Phone_Person',
'$Piority_Phone_Person',
'$Code_Phone_Person')"
答案 1 :(得分:0)
究竟是什么错误?
如果不知道确切的错误,我们就会在黑暗中刺伤问题。你能不能把这两行放在PHP页面的顶部?
error_reporting(E_ALL);
ini_set('display_errors', '1');
让我们知道错误是什么,然后我们可以建议:)