未定义的索引 php


Undefined index php

我的问题是我正在制作具有以下类别的约会网站表单

firstname,lastname,username,password,email,mysex,yoursex,relationship,date of birth, and country

我做了整个php代码,所以提交时会将信息发送到sql服务器。但是在php半,出生日期(DOB)日,月,年上有一些错误。并且mysexyoursex值未提交。Sql 给出未定义的索引。这是我的代码。(未提交的法尔夫)

<form action="process.php" method="post" id="register" class="col-xs-12"> 
<input class="register-switch-input" type="radio" name="mysex" value="hombre" id="me-male" > <label class="register-switch-label" for="me-male"> Hombre </label>
<input class="register-switch-input" type="radio" name="mysex" value="mujer" id="me-female"> <label class="register-switch-label" for="me-female"> Mujer </label> <br>  
<input type="radio" name="yoursex" value="hombre" id="your-male" checked> <label for="your-male"> Hombre </label>
<input  type="radio" name="yoursex" value="mujer" id="your-female"> <label for="your-female"> Mujer </label> 
<input type="radio" name="yoursex" value="cualquiera" id="cualquiera">  <label for="cualquiera">Cualquiera </label> <br> 
<label class="form-label">Nacimiento:</label>
   <select name="DOBMonth" >
   <option> - Month - </option>
   <option value="January">January</option>
   <option value="Febuary">Febuary</option>
    ""
<select name="DOBDay" >
 <option> - Day - </option>
 ""
<select name="DOBYear">
  <option> - Year - </option>
  <option value="2003">2003</option>

"是因为选择有一百万个选项,并且是不可理解的。这是我的 php 代码

 <?php
$servername = "localhost";
$username = "diego966";
$password = "ddddd966";
$dbname= "signup";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
} 
$firstname = $_POST["firstname"];
$lastname = $_POST["lastname"];
$username = $_POST['username'];
$password = $_POST['password'];
$email = $_POST['email'];
$mysex = $_POST["mysex"];
$yoursex = $_POST["yoursex"];
$relationship = $_POST['relationship'];
$DOBday = $_POST['DOBday'];
$DOBmonth = $_POST['DOBmonth'];
$DOByear = $_POST['DOByear'];
$country = $_POST['country'];


$sql="INSERT INTO accounts(firstname, lastname, username, password, email, mysex, yoursex, relationship, DOBday, DOBmonth, DOByear, country)
        VALUES ('$firstname', '$lastname','$username', '$password', '$email','$mysex', '$yoursex', '$relationship', 'DOBday', 'DOBmonth ','DOByear', '$country')"; 
if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
?>

正如评论中部分提到的:

  • DOBMonth 是 PHP 中的 DOBmonth
  • DOBYear 是 PHP 中的 DOByear
  • DOBDay 是 PHP 中的 DOBday
  • 你的无线电场需要通过 HTML 中的name="yoursex[]"定义,然后你签入 PHP 如果isset($_POST["yoursex"])然后你可以使用 $_POST["yoursex"][0]

消毒已经提到,但不能提到足够