PHP将数据插入mysql

时间:2016-02-04 15:02:01

标签: php mysql forms

我今天写了这个脚本用于自我改进,它在几分钟之前一直没有工作。

现在我突然得到一个:未定义的索引:FirstName,LastName等

有人可以帮我修复我的脚本吗?非常感谢你。

<?php
// Gegevens om in te loggen bij de PHP my admin.
$username = "";
$password = "";
$hostname = "localhost";
// De database die je wilt benaderen
$db = 'test';

//Maakt een connectie aan de database met gebruik van de gegevens.
$dbhandle = mysqli_connect($hostname, $username, $password)
or die("Kan niet verbinden aan de database");

echo "Connected to MySQL<br>";

//Kies vervolgens een database om te gebruiken.
$selected = mysqli_select_db($dbhandle, $db)
or die("Database: " . $db . " kan niet worden geselecteerd");

echo ("<br>Database: " .$db . " geselecteerd<br>");

//Sending form data to sql db.
mysqli_query($dbhandle, "INSERT into gebruikers (
voornaam, tussenvoegsel, achternaam, geboortedatum, straat, huisnummer,
postcode, plaats,telefoon, email)
VALUES ('$_GET[FirstName]', '$_GET[MiddleName]', '$_GET[LastName]',
'$_GET[DOB]', '$_GET[Street]'
, '$_GET[SNumber]', '$_GET[Postal]', '$_GET[City]', '$_GET[Number]',
'$_GET[Mail]')");





?>



<!DOCTYPE html>
<html lang="nl">
<head>
<meta charset="UTF-8">
<meta name="description" content="Gemlok. Het online gemeente loket voor iedereen">
<meta name="keywords" content="Gemeente, Loket, Online, Afspraak maken, Gemeenteloket, Rotterdam">
<meta name="author" content="Dennis van Zanten, ZZAO15A">
<link rel="stylesheet" type="text/css" href="css/styles.css">
<title>Welkom bij Gemlok, uw online gemeente loket.</title>
<script type="text/javascript" language="JavaScript" src="js/js.js">    </script>
</head>
<body>
<form>
    <fieldset method="get" action="form.php">
        <legend>Gegevens</legend>
        <label for="FirstName">Voornaam:</label><input required type="text" name="FirstName" id="FirstName"><br>
        <label for="MiddleName">Tussenvoegsel:</label><input required type="text" name="MiddleName" id="MiddleName"><br>
        <label for="LastName">Achternaam:</label><input required type="text" name="LastName" id="LastName"><br>
        <label for="DOB">Geboortedatum:</label><input required type="text" name="DOB" id="DOB"><br>
        <label for="Street">Straat:</label><input required type="text" name="Street" id="Street"><br>
        <label for="SNumber">Huisnummer:</label><input required type="text" name="SNumber" id="SNumber"><br>
        <label for="Postal">Postcode:</label><input required type="text" name="Postal" id="Postal"><br>
        <label for="City">Plaats:</label><input required type="text" name="City" id="City"><br>
        <label for="Number">Tel. Nr.:</label><input required type="text" name="Number" id="Number"><br>
        <label for="Mail">E-mail:</label><input required type="text" name="Mail" id="Mail"><br>
        <input type="submit" name="post" id="post">
    </fieldset>
</form>
</body>
</html>

2 个答案:

答案 0 :(得分:1)

将您的行更新为:

mysqli_query($dbhandle, "INSERT into gebruikers (
voornaam, tussenvoegsel, achternaam, geboortedatum, straat, huisnummer,
postcode, plaats,telefoon, email)
VALUES ('".$_GET['FirstName']."', '".$_GET['MiddleName']."', '".$_GET['LastName']."',
'".$_GET['DOB']."', '".$_GET['Street']."'
, '".$_GET['SNumber']."', '".$_GET['Postal']."', '".$_GET['City']."', '".$_GET['Number']."',
'".$_GET['Mail']."')");

答案 1 :(得分:0)

<强>第一

要将值用于$_GET变量,您需要指定' '

之间的关键字

就像这个例子:

<?
    echo $_GET['FirstName'];
?>

<强>其次

我认为使用$_GET变量将一些数据插入数据库是非常不安全的。

完成

这是解决问题的一部分:

"INSERT into gebruikers ( voornaam, tussenvoegsel, achternaam,geboortedatum, straat, huisnummer, postcode, plaats,telefoon, email)VALUES('".$_GET['FirstName']."','".$_GET['MiddleName']."','".$_GET['LastName']."','".$_GET['DOB']."', '".$_GET['Street']."'
    , '".$_GET['SNumber']."','".$_GET['Postal']."','".$_GET['City']."', '".$_GET['Number']."','".$_GET['Mail']."')"