Vraag & Antwoord

Webprogrammeren & scripting

inlogsysteem php

Bill Gates
1 antwoord
  • ik heb een inlogsysteem vanphpfreakz gedownload en ik wil hem zelf gaan gebruiken.

    nu heb ik onder win 98 php triad draaien en voer ik dus alle scripts uit op lacalhost.

    als ik nu gevens invoer in het join_form.html, en ik druk op verzenden, dan krijg ik gewoon de phpcode van register.php in de browser te zien.


    allereerst heb je een formulier waarbij de bezoeker zijn gegevens in moet vullen join_form.html:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <title>Untitled Document</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

    <form name="form1" method="post" action="register.php">
    <table width="100%" border="0" cellpadding="4" cellspacing="0">
    <td width="24%" align="left" valign="top">First Name</td>
    <td width="76%"><input name="first_name" type="text" id="first_name2" value="<? echo $first_name; ?>"></td>
    <td align="left" valign="top">Last Name</td>
    <td><input name="last_name" type="text" id="last_name" value="<? echo $last_name; ?>"></td>
    <td align="left" valign="top">Email Address</td>

    Deze stuurt de gegevens door naar register.php:


    include 'db.php';

    // Define post fields into simple variables
    $first_name = $_POST['first_name'];
    $last_name = $_POST['last_name'];
    $email_address = $_POST['email_address'];
    $username = $_POST['username'];
    $info = $_POST['info'];

    /* Let's strip some slashes in case the user entered
    any escaped characters. */

    $first_name = stripslashes($first_name);
    $last_name = stripslashes($last_name);
    $email_address = stripslashes($email_address);
    $username = stripslashes($username);
    $info = stripslashes($info);

    /* Do some error checking on the form posted fields */

    if((!$first_name) || (!$last_name) || (!$email_address) || (!$username)){
    echo 'You did not submit the following required information! <br />';
    echo "First Name is a required field. Please enter it below.<br />";
    echo "Last Name is a required field. Please enter it below.<br />";
    echo "Email Address is a required field. Please enter it below.<br />";
    echo "Desired Username is a required field. Please enter it below.<br />";
    include 'join_form.html'; // Show the form again!
    /* End the error checking and if everything is ok, we'll move on to
    creating the user account */
    exit(); // if the error checking has failed, we'll exit the script!

    /* Let's do some checking and ensure that the user's email address or username
    does not exist in the database */

    $sql_email_check = mysql_query("SELECT email_address FROM users WHERE email_address='$email_address'");
    $sql_username_check = mysql_query("SELECT username FROM users WHERE username='$username'");

    $email_check = mysql_num_rows($sql_email_check);
    $username_check = mysql_num_rows($sql_username_check);

    if(($email_check > 0) || ($username_check > 0)){
    echo "Please fix the following errors: <br />";
    if($email_check > 0){
    echo "<strong>Your email address has already been used by another member in our database. Please submit a different Email address!<br />";
    if($username_check > 0){
    echo "The username you have selected has already been used by another member in our database. Please choose a different Username!<br />";
    include 'join_form.html'; // Show the form again!
    exit(); // exit the script so that we do not create this account!

    /* Everything has passed both error checks that we have done.
    It's time to create the account! */

    /* Random Password generator.

    We'll generate a random password for the
    user and encrypt it, email it and then enter it into the db.

    function makeRandomPassword() {
    $salt = "abchefghjkmnpqrstuvwxyz0123456789";
    $i = 0;
    while ($i <= 7) {
    $num = rand() % 33;
    $tmp = substr($salt, $num, 1);
    $pass = $pass . $tmp;
    return $pass;

    $random_password = makeRandomPassword();

    $db_password = md5($random_password);

    // Enter info into the Database.
    $info2 = htmlspecialchars($info);
    $sql = mysql_query("INSERT INTO users (first_name, last_name, email_address, username, password, info, signup_date)
    VALUES('$first_name', '$last_name', '$email_address', '$username', '$db_password', '$info2', now())") or die (mysql_error());

    echo 'There has been an error creating your account. Please contact the webmaster.';
    } else {
    $userid = mysql_insert_id();
    // Let's mail the user!
    $subject = "Your Membership at MyWebsite!";
    $message = "Dear $first_name $last_name,
    Thank you for registering at our website, http://www.mydomain.com!

    You are two steps away from logging in and accessing our exclusive members area.

    To activate your membership, please click here: http://www.mydomain.com/activate.php?id=$userid&code=$db_password

    Once you activate your memebership, you will be able to login with the following information:
    Username: $username
    Password: $random_password

    The Webmaster

    This is an automated response, please do not reply!";

    mail($email_address, $subject, $message, "From: MyDomain Webmaster<admin@mydomain.com>\nX-Mailer: PHP/" . phpversion());
    echo 'Your membership information has been mailed to your email address! Please check it and follow the directions!';

    <td><input name="email_address" type="text" id="email_address" value="<? echo $email_address; ?>"></td>
    <td align="left" valign="top">Desired Username</td>
    <td><input name="username" type="text" id="username" value="<? echo $username; ?>"></td>
    <td align="left" valign="top">Information about you:</td>
    <td><textarea name="info" id="info"><? echo $info; ?></textarea></td>
    <td align="left" valign="top">&nbsp;</td>
    <td><input type="submit" name="Submit" value="Join Now!"></td>

    via het include bestand db.php wordt er een connectie gemaakt met mijn database genaamd "inloggen":

    /* Database Information - Required!! */
    /* – Configure the Variables Below –*/
    $dbhost = 'localhost';
    $dbusername = '';
    $dbpasswd = '';
    $database_name = 'inloggen';

    /* Database Stuff, do not modify below this line */

    $connection = mysql_pconnect("$dbhost","$dbusername","$dbpasswd")
    or die ("Couldn't connect to server.");

    $db = mysql_select_db("$database_name", $connection)
    or die("Couldn't select database.");

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.