我有一个php文件即。 index.php从这里我用Java调用另一个PHP文件,在其中我从数据库中选择数据,我调用这样的文件:
$.get("ociPHP/DBtoOCI.php", { uniqueReferenceKey: Reference } )
在DBtoOCI.php中我使用此查询:
$sqlReturnExistingOCI = "SELECT * FROM ociorder WHERE reference = '".$uniquekey."'";
$result = $conn->query($sqlReturnExistingOCI);
if ($result->num_rows > 0) {
echo echo '<input type="hidden" class="descriptionfield" name="NEW_ITEM-DESCRIPTION['.$count.']" value="' . htmlspecialchars($row['NEW_ITEM-DESCRIPTION'], ENT_QUOTES) .'">';
$sqlDeleteRow = "DELETE FROM ociorder WHERE `reference`= '" .$uniquekey. "'";
$conn->query($sqlDeleteRow);
if (mysqli_query($conn, $sqlDeleteRow)) {
echo "Record deleted successfully" . $uniquekey;
} else {
echo "Error deleting record: " . mysqli_error($conn);
}
}
然后在index.php中我将这个echo附加到div。如果我第一次调用这个DBtoOCI.php,那么我很好地看到附加的数据。但是,如果我第二次调用它(虽然已经删除了行,如果已经有一个带有uniqueKey的新行但是其他描述数据),那么我再次获得已经退出数据库的旧数据。知道怎么样?
答案 0 :(得分:2)
因为您执行了两次删除查询
$conn->query($sqlDeleteRow); // first time
if (mysqli_query($conn, $sqlDeleteRow)) {// second time
echo "Record deleted successfully" . $uniquekey;
} else {
echo "Error deleting record: " . mysqli_error($conn);
}
只执行一次
if ($conn->query($sqlDeleteRow)) {
echo "Record deleted successfully" . $uniquekey;
} else {
echo "Error deleting record: " . mysqli_error($conn);
}
不要为查询分配直接值
答案 1 :(得分:1)
当用JS调用.php文件时,你有select语句,然后在每次调用时我需要使用不同的唯一键调用数据。这工作