Mój index.php zawiera ...

<form class="form-signin" action="submit.php" method="post">
        <input class="form-control" type="text" id="name" name="name" required="" placeholder="Name" autofocus="">
        <input class="form-control" type="text" id="institution" name="institution" required="0" placeholder="Institution" autofocus="">
        <input class="form-control"type="email" id="email" placeholder="Email Address" autofocus="" />

Ale kiedy złożę formę za pomocą ...

$name = $_POST['name'];
$institution = $_POST['institution'];
$email = $_POST['email'];
$query = "INSERT INTO participants (name,institution,id) VALUES ('".$name."','".$institution."','".$email."')";

Otrzymuję błąd ...

Notice: Undefined index: email in C:\Development\XAMPP\htdocs\reg\submit.php on line 6
2
Gerard Balaoro 16 luty 2017, 20:10

2 odpowiedzi

Najlepsza odpowiedź

Nie masz pola nazw dla twojego wejścia e-mail, dodaj go:

 <input class="form-control" type="email" name="email" id="email" placeholder="Email Address" autofocus="" />

Po przesłaniu danych za pomocą formularza za pomocą metody POST, PHP przypisuje parę kluczową wartość do zmiennej globalnej $_POST za pomocą wartości nazwy wejść formularza jako kluczy.

Ponieważ nie miałeś nazwy zestawu do wejścia e-mail, twój błąd mówi, że nie ma (niezdefiniowany) klucz (indeks) wiadomości e-mail dla zmiennej globalnej {x0}}.

5
Peter Featherstone 16 luty 2017, 23:39

Zapomnisz ustawić nazwę e-maila:

 <input class="form-control" type="email" name="email" id="email" placeholder="Email Address" autofocus="" />
2
user3863196user3863196 16 luty 2017, 17:14