Undefined index beim übermitteln von HTML-Formular mit POST-Methode

Habe ich die Suche Tagen, warum dieses Stück code nicht funktioniert. Angepasst, den code mehrfach durch die Suche nach Beiträgen mit dem gleichen problem.

Problem: meine php-Datei nicht scheinen, um die Werte, die es braucht, aus einem einfachen HTML-Formular (aus w. bootstrap), die via POST-Methode. Ich benutze die issit-Funktion, um zu überprüfen, ob der submit-button geklickt wurde, und danach benutze ich um zu überprüfen, ob das Formular wurde vollständig ausgefüllt.

Bitte beachten Sie, dass ich bin relativ neu in php. Ich hoffe, ich habe etwas übersehen und es ist nicht nur ein einfacher Tippfehler.

PHP-code (bootstrap/php/boeking.php)

<?php

//<!--debug-->

error_reporting(E_ALL);
ini_set('display_errors', '1');


//<!--connectie-->

mysql_connect("localhost","root","root") or die(mysql_error());
mysql_select_db("hota") or die(mysql_error());


//<!--boeking info verzenden-->

if(isset($_POST['send']))

{

if (isset($_POST['achternaam'])) 
{
   $anaam = $_POST['achternaam'];
   //do whatever here
}

if(isset($_POST['voornaam']))
{
$vnaam =  $_POST['voornaam'];

}

}



$anaam = mysql_real_escape_string($anaam);
$vnaam = mysql_real_escape_string($vnaam);


$boek = "INSERT INTO klant (achternaam , voornaam) VALUES ('{$anaam}', '{$vnaam}')";

mysql_query($boek);

?>

HTML-code:

<form id="newbook" method="POST" action="bootstrap/php/boeking.php" class="form-horizontal">
  <legend>Nieuwe boeking</legend>
   <div class="control-group">
      <label class="control-label" for="voornaam">Voornaam</label>
      <div class="controls">
        <input type="text" name="voornaam" id="voornaam" placeholder="Voornaam">
      </div>
   </div>
   <div class="control-group">
      <label class="control-label" for="achternaam">Achternaam</label>
      <div class="controls">
        <input type="text" name="achternaam" id="achternaam" placeholder="Achternaam">
      </div>
    </div>
   <div class="control-group">
      <div class="controls">
        <button type="submit" name="send" class="btn">Sign in</button>
      </div>
   </div>
  </form>

Vielen Dank im Voraus!

UPDATE:

änderte meine php-code.

Nicht immer die undefined index Fehler mehr.
Var_dump($vnaam); und var_dump($anaam); zeigen Sie, dass Zeichenketten übergeben werden, die php aber nach, dass, wenn die Abfrage ausgelöst wird, die Dinge scheinen nicht zu erhalten, senden Sie an die db.

Könnte dies ein problem in meiner Abfrage ?

(schon danke für die Tipps: gab der Taste einen Wert ein, und verwendet var_dump)

Dies ist mein neuer code :

<?php

//<!--debug-->

error_reporting(E_ALL);
ini_set('display_errors', '1');


//<!--connectie-->

mysql_connect("localhost","root","root") or die(mysql_error());
mysql_select_db("hota") or die(mysql_error());


$anaam = '';
$vnaam = '';


if(!isset($_POST['send'])) { 

} 
 else
{

if (isset($_POST['achternaam'])) 
{
   $anaam = $_POST['achternaam'];
   //do whatever here

}

if(isset($_POST['voornaam']))
{
$vnaam =  $_POST['voornaam'];


}
var_dump($vnaam);
var_dump($anaam);


    $anaam = mysql_real_escape_string($anaam);
    $vnaam = mysql_real_escape_string($vnaam);

}

var_dump($vnaam);


$boek = "INSERT INTO klant (achternaam , voornaam) VALUES ('{$anaam}', '{$vnaam}')";

mysql_query($boek);

?>
Ist dein PHP-Skript definitiv erreicht wird, wenn das Formular Einreichen?
Welche Zeile der Fehler passiert, und was ist der undefined index in der Fehlermeldung?
Auch mit mysql_real_escape_string?
Ich bemerkte, dass ich denke, das muss sein, die unglückliche und verwirrende name der Funktion. lol. Ist es real oder nicht real?
Es ist eine andere Funktion mysql_escape_string ist das etwas anders. mysql_real_escape_string sollte man wirklich nutzen.

InformationsquelleAutor Tim Scheys | 2013-04-23

Schreibe einen Kommentar