Formulier naar tabel.
Ik ben bezig met een PHP Formuliertje, maar ik kom er niet uit.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<?php
[code]<?php
//we zetten error report aan voor als er een foutje in de code zou zitten, deze kan als alles optimaal werkt uitgezet worden. Dit doe je door de 1 te veranderen in een 0.
ini_set('display_errors', 0);
error_reporting(E_ALL | E_STRICT);
//we includen het bestand config.php zodat we verbinding hebben met de database
include ("config.php");
if ($_SERVER['REQUEST_METHOD'] == 'POST') { //kijken of het formulier gepost is
$naam = mysql_real_escape_string($_POST['naam']);
$ip = mysql_real_escape_string($_POST['ip']);
//velden controleren
$errors = array();
if(strlen($naam) < 2) {
array_push($errors, "Je hebt geen of een te korte naam ingevuld");
}
if(strlen($naam) > 30) {
array_push($errors, "Je hebt een te lange naam ingevuld");
}
//kijken of er een naam is ingevuld, zo nee onderbreek het proces, anders ga verder
if(count($errors) >0){
foreach($errors as $error){
echo $error;
}
}
else {
//alles mooi in de database zetten
mysql_query ("INSERT INTO ip (naam,ip) VALUES ('". $naam ."', '".$ip."')") or die (mysql_error());
echo 'Je gegevens zijn opgeslagen in de database';
}
}
else {
// het formulier en we zijn klaar
?>
<form action="registreren.php" method="post">
naam :<input type="text" name="naam" size="45">
ip : <input type="text" name="ip" size="60">
<input type="submit" value="verzenden" />
</form>
<?php
}
?>
?>
[code]<?php
//we zetten error report aan voor als er een foutje in de code zou zitten, deze kan als alles optimaal werkt uitgezet worden. Dit doe je door de 1 te veranderen in een 0.
ini_set('display_errors', 0);
error_reporting(E_ALL | E_STRICT);
//we includen het bestand config.php zodat we verbinding hebben met de database
include ("config.php");
if ($_SERVER['REQUEST_METHOD'] == 'POST') { //kijken of het formulier gepost is
$naam = mysql_real_escape_string($_POST['naam']);
$ip = mysql_real_escape_string($_POST['ip']);
//velden controleren
$errors = array();
if(strlen($naam) < 2) {
array_push($errors, "Je hebt geen of een te korte naam ingevuld");
}
if(strlen($naam) > 30) {
array_push($errors, "Je hebt een te lange naam ingevuld");
}
//kijken of er een naam is ingevuld, zo nee onderbreek het proces, anders ga verder
if(count($errors) >0){
foreach($errors as $error){
echo $error;
}
}
else {
//alles mooi in de database zetten
mysql_query ("INSERT INTO ip (naam,ip) VALUES ('". $naam ."', '".$ip."')") or die (mysql_error());
echo 'Je gegevens zijn opgeslagen in de database';
}
}
else {
// het formulier en we zijn klaar
?>
<form action="registreren.php" method="post">
naam :<input type="text" name="naam" size="45">
ip : <input type="text" name="ip" size="60">
<input type="submit" value="verzenden" />
</form>
<?php
}
?>
?>
Deze heb ik gevonden op het internet, en ik heb alles goed gezet.
Nu werkt hij wel, maar het komt er bij in.
En het moet eigelijk het Bestaande in die tabel overschrijven.
Hoe kan ik dat doen?
Mvg, Kevin
Gewijzigd op 23/01/2011 21:33:48 door Kevin Blokzijl
dus:
Code (php)
1
2
3
2
3
<?
mysql_query("UPDATE ip SET naam='". $naam ."', ip='". $ip ."'") or die (mysql_error());
?>
mysql_query("UPDATE ip SET naam='". $naam ."', ip='". $ip ."'") or die (mysql_error());
?>
Vergeet ook je query niet af te handelen, en action is in dit geval niet nodig.
PHP open en sluit je 2 maal, 1 maal is voldoende ;-)