PHP forum uitbreiden

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Rutje1

rutje1

21/10/2007 12:04:00
Quote Anchor link
Hallo,

Ik heb gebruik gemaakt van een forum op mijn website. Ik maakte gebruik van de bekendere, gratis te downloaden forumsoftware op internet (phpBB, MyBB).

Nu ik weet hoe dit werkt ben ik van plan een eigen (versimpeld) forum te gaan maken/schrijven.

Ik kwam uit op deze tutorial. Het heeft mij erg goed geholpen en doordat ik heb opgezocht wat ik niet snapte is het mij helemaal duidelijk hoe dat forum in de tut werkt.

Nu zou ik om te beginnen graag een veld toe willen voegen op het registratieformulier. Ik heb al via SQL de kolom aangemaakt voor dit extra veld. Het hoeft geen verplicht veld te zijn. Wie zou mij kunnen uitleggen hoe ik dit toe kan voegen?

code registreren.php
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
<?php
error_reporting(E_ALL);
include('verbind.php');
    if(isset($_POST['registreer'])){

        function
email_validator($email){
            if (eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$",$email))
               {
$geldig = 'ja';   }
           else{$geldig = 'nee';}
        return $geldig;
        }
        function
email_check($email){
                $email_query = "SELECT gebruiker_email FROM gebruiker WHERE gebruiker_email='".$email."';";
                $email_sql   = mysql_query($email_query)or die(mysql_error());
                if(mysql_num_rows($email_sql) == 0)
                    {
$bezet =  'nee';}
                else{$bezet =  'ja' ;}
                return $bezet;
        }
        function
gebruikersnaam_check($gebruikersnaam){
                $gebruikersnaam_query = "SELECT gebruiker_naam FROM gebruiker WHERE gebruiker_naam='".$gebruikersnaam."';";
                $gebruikersnaam_sql   = mysql_query($gebruikersnaam_query)or die(mysql_error());
                if(mysql_num_rows($gebruikersnaam_sql) == 0)
                    {
$bezet =  'nee' ;}
                else{$bezet =  'ja';}  
                return $bezet;
        }


            if(trim($_POST['gebruikersnaam']) == ""){
                    echo 'U heeft geen gebruikersnaam ingevuld';
            }
elseif(gebruikersnaam_check($_POST['gebruikersnaam']) == 'ja'){
                echo 'Deze gebruikersnaam is al in gebruik, kies a.u.b een ander.';
               }
elseif($_POST['wachtwoord1'] != $_POST['wachtwoord2']){
                 echo 'De opgegeven wachtwoorden komen niet overeen';
               }
elseif($_POST['wachtwoord1'] == ""){
                 echo 'Er zijn geen wachtwoord<b>en</b> opgegeven';
               }
elseif(email_validator($_POST['emailadres']) == 'nee'){
                   echo 'Het ingevulde emailadres is niet geldig';
               }
elseif(email_check($_POST['emailadres']) ==  'ja'){
                   echo 'Er is al iemand geregistreerd met dit emailadres.';
               }
else{
                    $query = "INSERT INTO gebruiker
                              (gebruiker_naam, gebruiker_wachtwoord, gebruiker_email)
                              VALUES
                              ('"
.mysql_real_escape_string($_POST['gebruikersnaam'])."',
                                '"
.md5($_POST['wachtwoord1'])."',
                                '"
.$_POST['emailadres']."');";
                   $sql = mysql_query($query)or die(mysql_error());
                echo 'U bent succesvol aangemeld. Hieronder kunt u inloggen:';
                include('inloggen.php');              
               }
}
else{

    ?>

<form action="registreren.php" method="POST">
<table>
<tr><td>Gebruikersnaam:</td><td><input type="text" name="gebruikersnaam" value=""></td></tr>
<tr><td>Wachtwoord:</td><td><input type="password" name="wachtwoord1" value=""></td></tr>
<tr><td>Wachtwoord nogmaals:</td><td><input type="password" name="wachtwoord2" value=""></td></tr>
<tr><td>Emailadres:</td><td><input type="text" name="emailadres" value=""></td></tr>
<tr><td></td><td><input type="submit" name="registreer" value="Aanmelden">
</table>
</form>    
<?php
}

?>


Met vriendelijke groet,
Rutje1
Gewijzigd op 01/01/1970 01:00:00 door Rutje1
 
PHP hulp

PHP hulp

18/12/2024 06:34:08
 
Rutje1

rutje1

22/10/2007 18:50:00
Quote Anchor link
Bump tijd>24 uur

Kan iemand mij met een simpele uitleg helpen?
Maak me blij =D
 
Manaus

Manaus

22/10/2007 19:03:00
Quote Anchor link
eerst en vooral moet je je formulier aanpassen

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<form action="registreren.php" method="POST">
<table>
<tr><td>Gebruikersnaam:</td><td><input type="text" name="gebruikersnaam" value=""></td></tr>
<tr><td>Wachtwoord:</td><td><input type="password" name="wachtwoord1" value=""></td></tr>
<tr><td>Wachtwoord nogmaals:</td><td><input type="password" name="wachtwoord2" value=""></td></tr>
<tr><td>Emailadres:</td><td><input type="text" name="emailadres" value=""></td></tr>
<tr><td>Extra_VEld:</td><td><input type="text" name="extra" value=""></td></tr>
<tr><td></td><td><input type="submit" name="registreer" value="Aanmelden">
</table>
</form>  

daarna moet je de insert query aanpassen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
$query
= "INSERT INTO gebruiker
                              (gebruiker_naam, gebruiker_wachtwoord, gebruiker_email, naam_van_extra_veld)
                              VALUES
                              ('"
.mysql_real_escape_string($_POST['gebruikersnaam'])."',
                                '"
.md5($_POST['wachtwoord1'])."',
                                '"
.$_POST['emailadres']."', '".mysql_real_escape_string($_POST['extra'])."');";
?>

Hopelijk kom je hiermee verder, dus de naam van het veld extra is 'extra', na het submitten word de value dus geplaatst in de superglobal $_POST['extra'] we zetten een veldj bij bij de velden, en we zetten een value meer bij de values... we escapen $_POST['extra'] voor de veiligheid

Mvg, Manaus
Gewijzigd op 01/01/1970 01:00:00 door Manaus
 
Rutje1

rutje1

22/10/2007 21:33:00
Quote Anchor link
Ik heb het in het script ingevoegd en het Werkt! =D

Hartelijk bedankt, het is voor mij erg belangrijk en nu ga ik proberen meerdere opties toe te voegen.

Met vriendelijke groeten,
Rutje1 :)
 



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.