Я не могу вставить данные. Ошибка:
Ошибка: Неизвестный столбец '' in 'field list'
Это простая страница HTML-формы, и пользователь вводит данные в базу данных дБ. Помощь действительно необходима. Я не могу получить ошибки. Я новичок.
<?php $con=mysqli_connect("localhost", "root", "root","dB"); if (mysqli_connect_errno()) { echo "Failed to connect to MySQL: " . mysqli_connect_error(); } $enrollno=$_POST['enrollno']; $fname=$_POST['fname']; $lname=$_POST['lname']; $fathername=$_POST['fathername']; $coursename=$_POST['coursename']; $yearsem=$_POST['yearsem']; $facultyno=$_POST['facultyno']; $hostel=$_POST['hostel']; $roomno=$_POST['roomno']; $email=$_POST['email']; $mobileno=$_POST['mobileno']; $peradd=$_POST['peradd']; $district=$_POST['district']; $state=$_POST['state']; $amount=$_POST['amount']; $pwd=$_POST['pwd']; $tnc=$_POST['tnc']; $sql="INSERT INTO registration (enrollno, fname, lname, fathername, coursename, yearsem, facultyno, hostel, roomno, email, mobileno, peradd, district, state, amount, pwd, tnc) VALUES ('$enrollno',`$fname`,`$lname`,`$fathername`,`$coursename`,`$yearsem`,`$facultyno`,`$hostel`,`$roomno`,`$email`,`$mobileno`,`$peradd`,`$district`,`$state`,`$amount`,`$pwd`,'$tnc')"; if (!mysqli_query($con,$sql)) { die('Error: ' . mysqli_error($con)); } echo "1 record added"; mysqli_close($con); ?>
Вы используете обратные ссылки [ используемые для столбцов ] для переменных. Используйте одинарные кавычки. Попробуйте приведенный ниже код
$sql="INSERT INTO registration (enrollno, fname, lname, fathername, coursename, yearsem, facultyno, hostel, roomno, email, mobileno, peradd, district, state, amount, pwd, tnc) VALUES ('$enrollno','$fname','$lname','$fathername','$coursename','$yearsem','$facultyno','$hostel','$roomno','$email','$mobileno','$peradd','$district','$state','$amount','$pwd','$tnc')";
Значения в запросе INSERT INTO
должны быть заключены в одинарные кавычки '
not backticks», а не в смесь обоих. Backticks можно использовать только для имени поля и таблицы.
$sql="INSERT INTO registration (enrollno, fname, lname, fathername, coursename, yearsem, facultyno, hostel, roomno, email, mobileno, peradd, district, state, amount, pwd, tnc) VALUES ('$enrollno','$fname','$lname','$fathername','$coursename','$yearsem','$facultyno','$hostel','$roomno','$email','$mobileno','$peradd','$district','$state','$amount','$pwd','$tnc')";
Замечание: ваш код уязвим для SQL Injection . Подумайте о том, как использовать подготовленный оператор со связанными параметрами, а не конкатенацию пользовательского ввода в запрос.