Я пытаюсь вставить $ teacherId в поле «TeacherId» в базе данных, но для этого ему нужно найти имя пользователя учителя «TeacherUsername», чтобы иметь возможность найти правильный TeacherId который соответствует имени пользователя учителя.Как исправить эту ошибку неопределенного уведомления
Проблема заключается в том, что я получаю уведомление о том: Примечание: Undefined индекс: teacherusername в /Mobile_app/QandATable2.php на линии 27, которая находится здесь:
$teacherid = "SELECT TeacherId FROM (SELECT TeacherUsername from Teacher where TeacherUsername = '".mysql_real_escape_string($_POST['teacherusername'])."')";
Почему это дает мне это уведомление, потому что нет ничего плохого в методе $ _POST, и он работает на дне здесь:
<?php echo $_POST['teacherusername']); ?>
Ниже приведен полный код:
<?php>
session_start();
$username="xxx";
$password="xxx";
$database="mobile_app";
mysql_connect('localhost',$username,$password);
@mysql_select_db($database) or die("Unable to select database");
$teacherid = "SELECT TeacherId FROM (SELECT TeacherUsername from Teacher where TeacherUsername = '".mysql_real_escape_string($_POST['teacherusername'])."')";
$sql="INSERT INTO Session (TeacherId)
VALUES
(' ". mysql_real_escape_string($teacherid) . "')";
mysql_query($sql);
mysql_close();
?>
<?php echo $_POST['teacherusername']); ?>
Что в '$ _POST'? Можете ли вы сделать 'print_r ($ _ POST)'? Имейте в виду, что индексы массива чувствительны к регистру. – Brad
У вас может быть невидимый символ в первом '$ _POST ['teacherusername']'. Попробуйте удалить его и переписать его. – MichaelRushton
В $ _POST ['teacherusername'] он отправляет имя пользователя, которое учитель ввел в текстовое поле на предыдущей странице. Так, например, я набрал «j.lu» в текстовом поле, и когда я отправляю форму, она отображается в эхом, вы видите «j.lu». Таким образом, $ _POST работает, но он не распознает его в запросе, который я пытаюсь сделать. – user1394925