Поиск нескольких таблиц для одного имени входа - PullRequest
0 голосов
/ 08 ноября 2019

Относительно новый для PHP и чрезвычайно ржавый на моем SQL

Разделить существующую таблицу: users на две таблицы student и professor для разных типов пользователей, ноТеперь возникли проблемы с регистрацией не удается. Таблицы практически одинаковы, за исключением первичных ключей (studentID и professorID), поэтому они содержат uName и email столбцы

исходный используемый оператор (при предварительном поиске в одной таблице):

$sql = "SELECT * FROM user WHERE uName=? OR email=?;";
$stmt = mysqli_stmt_init($conn);

  if (!mysqli_stmt_prepare($stmt, $sql) {
    header("Location: ../index.php?error=sqlerror");
    exit(); }

сейчас пытается использовать:

$sql = "SELECT * FROM student, professor WHERE uName=? OR email=?;";
$stmt = mysqli_stmt_init($conn);

  if (!mysqli_stmt_prepare($stmt, $sql) {
    header("Location: ../index.php?error=sqlerror");
    exit(); }

mysqli_stmt_prepare() каждый раз терпит неудачу и возвращает указанный выше заголовок "sqlerror", но я не понимаю проблему?

поиск работает нормально при использовании одной таблицы, но не при поиске обеих, в поисках объяснения с ответом.

Также ... таблицы не связаны напрямую, а accountТаблица действительно связывает их, если это помогает сделать рабочий SELECT оператор

-account-         -student-          -professor-
accountID pk      studentID pk       professorID pk
studentID fk      uName              uName
professorID fk    email              email
                  password           password
...