$_POST uit variablen van database

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Angelino

Angelino

30/05/2009 23:56:00
Quote Anchor link
Hallo, ik ben voor een evenementen organisatie een onderdeel van een website aan het maken.
Hun geven in een database in welke bradeërien of evenementen er op een datum zijn.
Deze geef ik weer op een pagina met dit stukje:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<table>
<?php
$selectmarkten
= mysql_query("SELECT *,DATE_FORMAT(datum, '%d-%m-%Y') AS date FROM `markten` ORDER BY `datum` ASC")or die(mysql_error());
while($listmarkten = mysql_fetch_object($selectmarkten)){
    echo"<tr><td>$listmarkten->dag</td><td>$listmarkten->date</td><td>$listmarkten->markt</td><td>$listmarkten->omschrijving</td><td>$listmarkten->tijd</td><td><input type=\"text\" name=\"kramen$listmarkten->id\" size=\"1\" maxlength=\"2\" /> kramen <input type=\"text\" name=\"meters$listmarkten->id\" size=\"1\" maxlength=\"2\" /> meters</td></tr>";
}

?>

</table>


Dit is dan een volledig formulier wat er zo uit ziet:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
Wilt U deelnemen aan de onderstaande markten vul dan dit inschrijfformulier en druk op verzend.<br />
<br />
Velden met <font color="#FF0000">*</font> zijn verplicht.<br>
<form action="index.php?p=inschrijven" method="post">
Naam: <font color="#FF0000">*</font><br />
<input type="text" name="naam"><br />
Straat: <font color="#FF0000">*</font><br />
<input type="text" name="straat" /><br />
Huisnummer: <font color="#FF0000">*</font><br />
<input type="text" name="huisnummer" /><br />
Postcode: <font color="#FF0000">*</font><br />
<input type="text" name="postcode1" size="2" maxlength="4"/><input type="text" name="postcode2" size="1" maxlength="2" /><br />
Woonplaats: <font color="#FF0000">*</font><br />
<input type="text" name="woonplaats" /><br />
Telefoon: <font color="#FF0000">*</font><br>
<input type="text" name="telefoon" /><br>
Mobiel: <font color="#FF0000">*</font><br>
<input type="text" name="mobiel" /><br>
KvK: <font color="#FF0000">*</font><br>
<input type="text" name="kvk" /><br>
Crk: <font color="#FF0000">*</font><br>
<input type="text" name="crk" /><br>
BTW: <font color="#FF0000">*</font><br>
<input type="text" name="btw" /><br>
Fax:<br>
<input type="text" name="fax" /><br>
Email: <font color="#FF0000">*</font><br>
<input type="text" name="email" /><br>
Branche: <font color="#FF0000">*</font><br>
<input type="text" name="branche" /><br>
<table>
<?php
$selectmarkten
= mysql_query("SELECT *,DATE_FORMAT(datum, '%d-%m-%Y') AS date FROM `markten` ORDER BY `datum` ASC")or die(mysql_error());
while($listmarkten = mysql_fetch_object($selectmarkten)){
    echo"<tr><td>$listmarkten->dag</td><td>$listmarkten->date</td><td>$listmarkten->markt</td><td>$listmarkten->omschrijving</td><td>$listmarkten->tijd</td><td><input type=\"text\" name=\"kramen$listmarkten->id\" size=\"1\" maxlength=\"2\" /> kramen <input type=\"text\" name=\"meters$listmarkten->id\" size=\"1\" maxlength=\"2\" /> meters</td></tr>";
}

?>

</table>
<input type="submit" value="Verzend" name="submit">


Je ziet dat de naam van het text veld waar het aantal meters en/of kramen kan worden ignevuld word gemaakt met de naam meters/kramen(standaard)+het id van de braderie/markt

Dit wil ik dat opgestuurd word naar de evenementen organisatie maar hoe maak ik al die meters$listmarkten->id en kramen$listmarkten->id een $_POST['textnaam'] van.

Ik heb dit gedaan:


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
$selectmarkten = mysql_query("SELECT *,DATE_FORMAT(datum, '%d-%m-%Y') AS date FROM `markten` ORDER BY `datum` ASC")or die(mysql_error());
while($listmarkten = mysql_fetch_object($selectmarkten)){
    $markten .= "<tr><td>$listmarkten->dag</td><td>$listmarkten->date</td><td>$listmarkten->markt</td><td>$listmarkten->omschrijving</td><td>$listmarkten->tijd</td><td>".$_POST['kramen$listmarkten->id']." kramen ".$_POST['meters$listmarkten->id']." meters</td></tr>";
}

Maar dit werkt niet, hoe los ik het op.

Dit is het Volledige script:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
<h1>Inschrijven</h1>
<?php
if($_POST['submit']){
    $naar = "[email protected]";
    $headers = "From: ".$_POST['naam']." <".$_POST['email'].">\r\n";
    $headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
    function
checkmail($email)
    {

        $email_host = explode("@", $email);
        $email_host = $email_host[1];
        $email_resolved = gethostbyname($email_host);
        
        if($email_resolved == $email_host)
        {

            $valid = FALSE;
        }

        if (eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$",$email))
        {

            $valid = TRUE;
        }

        else
        {
            $valid = FALSE;
        }

        return $valid;
    }

    if(!$_POST['naam']){
        echo"U bent vergeten een naam in te vullen, <a href=\"#\" onclick=\"history.back()\">ga terug</a>.";
    }
elseif(!$_POST['straat']){
        echo"U bent vergeten een straat in te vullen, <a href=\"#\" onclick=\"history.back()\">ga terug</a>.";
    }
elseif(!$_POST['huisnummer']){
        echo"U bent vergeten een huisnummer in te vullen, <a href=\"#\" onclick=\"history.back()\">ga terug</a>.";
    }
elseif(!$_POST['postcode1']){
        echo"U bent een deel van u postcode vergeten in te vullen, <a href=\"#\" onclick=\"history.back()\">ga terug</a>.";
    }
elseif(!$_POST['postcode2']){
        echo"U bent een deel van u postcode vergeten in te vullen, <a href=\"#\" onclick=\"history.back()\">ga terug</a>.";
    }
elseif(!$_POST['woonplaats']){
        echo"U bent vergeten u woontplaats in te vullen, <a href=\"#\" onclick=\"history.back()\">ga terug</a>.";
    }
elseif(!$_POST['telefoon']){
        echo"U bent vergeten u telefoon in te vullen, <a href=\"#\" onclick=\"history.back()\">ga terug</a>.";
    }
elseif(!$_POST['mobiel']){
        echo"U bent vergeten u mobiel in te vullen, <a href=\"#\" onclick=\"history.back()\">ga terug</a>.";
    }
elseif(!$_POST['kvk']){
        echo"U bent vergeten u KvK nummer in te vullen, <a href=\"#\" onclick=\"history.back()\">ga terug</a>.";
    }
elseif(!$_POST['crk']){
        echo"U bent vergeten u Crk nummer in te vullen, <a href=\"#\" onclick=\"history.back()\">ga terug</a>.";
    }
elseif(!$_POST['btw']){
        echo"U bent vergeten u BTW nummer in te vullen, <a href=\"#\" onclick=\"history.back()\">ga terug</a>.";
    }
elseif(!$_POST['email']){
        echo"U bent vergeten u email in te vullen, <a href=\"#\" onclick=\"history.back()\">ga terug</a>.";
    }
elseif(checkmail($_POST['email']) == 0){
        echo"Vul een correct e-mail adres in, <a href=\"#\" onclick=\"history.back()\">ga terug</a>.";
    }
elseif(!$_POST['branche']){
        echo"U bent vergeten u branche in te vullen, <a href=\"#\" onclick=\"history.back()\">ga terug</a>.";
    }
else{
        $selectmarkten = mysql_query("SELECT *,DATE_FORMAT(datum, '%d-%m-%Y') AS date FROM `markten` ORDER BY `datum` ASC")or die(mysql_error());
        while($listmarkten = mysql_fetch_object($selectmarkten)){
    $markten .= "<tr><td>$listmarkten->dag</td><td>$listmarkten->date</td><td>$listmarkten->markt</td><td>$listmarkten->omschrijving</td><td>$listmarkten->tijd</td><td>".$_POST['kramen$listmarkten->id']." kramen ".$_POST['meters$listmarkten->id']." meters</td></tr>";
        }

        mail("$naar", "Inschrijving", "Naam: ".$_POST['naam']."<br>
Adres: "
.$_POST['straat']." ".$_POST['huisnummer']."<br>
Postcode: "
.$_POST['postcode1']."".$_POST['postcode2']."<br>
Woonplaats: "
.$_POST['woonplaats']."<br>
Telefoon: "
.$_POST['telefoon']."<br>
Mobiel: "
.$_POST['mobiel']."<br>
KvK: "
.$_POST['kvk']."<br>
Crk: "
.$_POST['crk']."<br>
BTW: "
.$_POST['btw']."<br>
Fax: "
.$_POST['fax']."<br>
Email: "
.$_POST['email']."<br>
Branche: "
.$_POST['branche']."<br>
<br>
<table>$markten</table>"
, "$headers");
        echo"U inschrijving is succesvol verzonden.";
    }
}
else{
?>

Wilt U deelnemen aan de onderstaande markten vul dan dit inschrijfformulier en druk op verzend.<br />
<br />
Velden met <font color="#FF0000">*</font> zijn verplicht.<br>
<form action="index.php?p=inschrijven" method="post">
Naam: <font color="#FF0000">*</font><br />
<input type="text" name="naam"><br />
Straat: <font color="#FF0000">*</font><br />
<input type="text" name="straat" /><br />
Huisnummer: <font color="#FF0000">*</font><br />
<input type="text" name="huisnummer" /><br />
Postcode: <font color="#FF0000">*</font><br />
<input type="text" name="postcode1" size="2" maxlength="4"/><input type="text" name="postcode2" size="1" maxlength="2" /><br />
Woonplaats: <font color="#FF0000">*</font><br />
<input type="text" name="woonplaats" /><br />
Telefoon: <font color="#FF0000">*</font><br>
<input type="text" name="telefoon" /><br>
Mobiel: <font color="#FF0000">*</font><br>
<input type="text" name="mobiel" /><br>
KvK: <font color="#FF0000">*</font><br>
<input type="text" name="kvk" /><br>
Crk: <font color="#FF0000">*</font><br>
<input type="text" name="crk" /><br>
BTW: <font color="#FF0000">*</font><br>
<input type="text" name="btw" /><br>
Fax:<br>
<input type="text" name="fax" /><br>
Email: <font color="#FF0000">*</font><br>
<input type="text" name="email" /><br>
Branche: <font color="#FF0000">*</font><br>
<input type="text" name="branche" /><br>
<table>
<?php
$selectmarkten
= mysql_query("SELECT *,DATE_FORMAT(datum, '%d-%m-%Y') AS date FROM `markten` ORDER BY `datum` ASC")or die(mysql_error());
while($listmarkten = mysql_fetch_object($selectmarkten)){
    echo"<tr><td>$listmarkten->dag</td><td>$listmarkten->date</td><td>$listmarkten->markt</td><td>$listmarkten->omschrijving</td><td>$listmarkten->tijd</td><td><input type=\"text\" name=\"kramen$listmarkten->id\" size=\"1\" maxlength=\"2\" /> kramen <input type=\"text\" name=\"meters$listmarkten->id\" size=\"1\" maxlength=\"2\" /> meters</td></tr>";
}

?>

</table>
<input type="submit" value="Verzend" name="submit">
<?php
}
?>
 
PHP hulp

PHP hulp

20/11/2024 08:18:23
 
Roel -

Roel -

31/05/2009 00:51:00
Quote Anchor link
Wil je het emailen of in een database zetten?
 
Angelino

Angelino

31/05/2009 22:33:00
Quote Anchor link
Email maar ik heb het opgelost door
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
".$_POST['kramen$listmarkten->id']."

Te vervangen door:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
".$_POST['kramen'.$listmarkten->id']."
Gewijzigd op 01/01/1970 01:00:00 door Angelino
 

31/05/2009 22:37:00
Quote Anchor link
Sterretje (*) moet je niet gebruiken om data op te halen uit je database. Je moet geen backtricks (`) in je sql gebruiken. Je kunt beter assoc gebruiken ipv object. Je moet variable buiten quotes halen. Controleren of een formulier gepost is doe je met REQUEST_METHOD. Je hebt mail injections. Eregi is oud, preg_match gebruik je nu.
Gewijzigd op 01/01/1970 01:00:00 door
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.