У меня есть форма и 2 поля ввода, одно для идентификатора и одно для информации, когда я сохраняю значения, мне нужно проверить, существует ли идентификатор в таблице номер 1 или нет, если он существует, затем сохраните информацию в таблице номер 2, если не существует, скажите, что это недействительный идентификатор, и вот мой код.
Ps, идентификатор уже существует в другой таблице, и я хочу сохранить информацию в другой таблице, а я не есть какие-либо проблемы с соединением или чем-то еще, что я могу немедленно сохранить, если второе условие не существует, и в базе данных он будет автоматически проверять, существует ли идентификатор или нет, но я хочу проверить здесь, если я пишу недействительный или нет.
<?php
if (isset($_POST['submitInfo'])) {
require 'dbh.php';
$ID = $_POST['ID'];
$Info = $_POST['DataInfo'];
$check = "SELECT ID FROM info";
$cresult = mysqli_query($conn, $check);
$cresult1 = mysqli_store_result($cresult);
if (!preg_match("/^[0-9]*$/", $ID)) {
header("Location: ../Data.php?error=invalidID");
exit();
} else if (mysqli_num_rows($cresult1) == 0 ) {
header("Location: ../Data.php?error=invalidID2");
exit();
} else {
$sql = "INSERT into datainfo (ID,Information) values (?,?)";
$stmt = mysqli_stmt_init($conn);
if (!mysqli_stmt_prepare($stmt, $sql)) {
header("Location: ../Data.php?error=sqlerror");
exit();
} else {
mysqli_stmt_bind_param($stmt, "is", $ID, $Info);
mysqli_stmt_execute($stmt);
mysqli_stmt_store_result($stmt);
header("Location: ../Data.php?signup=success");
exit();
}
}
}