Repopulating a form after an error

PHP programming forum. Ask questions or help people concerning PHP code. Don't understand a function? Need help implementing a class? Don't understand a class? Here is where to ask. Remember to do your homework!

Moderator: General Moderators

Post Reply
User avatar
steedvlx
Forum Contributor
Posts: 122
Joined: Wed Jun 11, 2003 10:54 pm
Location: Osaka, Japan

Repopulating a form after an error

Post by steedvlx »

Hi all and thanks to greenhorn666 for the sharp eyes on my last post.

The second issue with this form is that I wish that it would repopulate itself with the user's entries when an error occurs. Errors such as "userid in use", "re-entered email address does not match". Al of these are in the error-trapping section. When the form enters and error state, all of the entries are lost.

I have already made several attempts manipulating session variables and trying to repopulate the fields by echo-ing the session vars. But, for some reason they aren't displaying on reload.

I have probably approached this all wrong, but I have really tried to solve the problem myself. I believe it should work. What's going on?

Here is the obligatory updated and non-working code...

Code: Select all

<?php
<?php 
    require_once('../Connections/kb_conn.php'); 
    include '../includes/common_db.php'; 
    mysql_select_db($database_kb_conn, $kb_conn); 
	 session_register("suserid", "susercountry", "suseremail", "smember_make", "smember_model", "smember_year", "smember_comment");
  session_register("suser_challenge_phrase", "suser_challenge_response", "smember_first_name", "smember_first_name_furi", "smember_first_name_kanji");
  session_register("smember_last_name", "smember_last_name_furi", "smember_last_name_kanji", "smember_ship_postal_code", "smember_ship_pref_prov");
  session_register("smember_ship_city", "smember_ship_address_1", "smember_ship_address_2", "saccount_enable", "swishlist_enable", "semail_offers");
  session_register("spartner_email", "sonsale_email", "sforum_access", "scustom_cruzer_access", "sunused_flag8", "sunused_flag9", "sunused_flag10");
  session_register("sunused_flag11", "sunused_flag12", "sunused_flag13", "sunused_flag14", "sunused_flag15");
       
	function in_use($userid) { 
        global $user_tablename; 
        $query = "SELECT userid FROM $user_tablename WHERE userid = '$userid'"; 
        $result = mysql_query($query); 
        if (!mysql_num_rows($result)) return 0; 
        else return 1; 
    } 
    
	function register_form() {
 global $userid, $userpassword, $userpassword2, $usercountry, $useremail, $member_make, $member_model, $member_year, $member_comment;
   global $user_challenge_phrase, $user_challenge_response, $member_first_name, $member_first_name_furi, $member_first_name_kanji;
   global $member_last_name, $member_last_name_furi, $member_last_name_kanji, $member_ship_postal_code, $member_ship_pref_prov;
   global $member_ship_city, $member_ship_address_1, $member_ship_address_2, $account_enable, $wishlist_enable, $email_offers;
   global $partner_email, $onsale_email, $forum_access, $custom_cruzer_access, $unused_flag8, $unused_flag9, $unused_flag10;
   global $unused_flag11, $unused_flag12, $unused_flag13, $unused_flag14, $unused_flag15;
   global $default_dbname, $user_tablename;
    //unused_flag variables will be renamed and implemented as the need arises
  global $PHP_SELF;
?> 
<title>Member Registration Page</title>

<body bgcolor="#FFFFFF">
<CENTER>
  <H3><span id="Layer1" style="position:absolute; width:200px; height:115px; z-index:-1; left: 0; top: 3;"><img src="../images/banner_with_flag_english3.gif" width="800" height="175"></span></H3>
</CENTER>
<span id="Layer2" style="position:absolute; width:799px; height:882px; z-index:0; left: 0px; top: 156px;"> 
<FORM ACTION="<?php echo $PHP_SELF ?>" METHOD="POST" name="fm_register" id="fm_register">
  <DIV ALIGN="CENTER">
    <CENTER>
      <TABLE WIDTH="790" BORDER="0" align="center" cellpadding="0" cellspacing="0">
        <TR bgcolor="#A40404">
          <TH height="35" NOWRAP><a href="../e_index.php"><img src="../images/e_home.gif" width="72" height="22" border="0"></a></TH>
          <TH height="35" colspan="6" NOWRAP><font color="#FFFFFF" size="4" face="Arial, Helvetica, sans-serif">Create
          Your  Own KokusaiBuhin Member Account!</font></TH>
        </TR>
        <tr bordercolor="#FFCC00">
          <td height="27" colspan="7" bgcolor="#FFCC00"><font color="#000000" size="3" face="Arial, Helvetica, sans-serif"><strong>&nbsp;&nbsp;<font size="4">&nbsp;&nbsp;Information
                  About You:</font></strong></font></td>
        </tr>
        <tr bordercolor="#FFCC00">
          <td width="91" align="center" valign="middle" bgcolor="#CCCCCC"><center>
              <font size="2" face="Arial, Helvetica, sans-serif"><strong>Name</strong></font><strong> </strong>
            </center>
          </td>
          <td width="48" align="right" valign="middle" bgcolor="#CCCCCC"><font size="2" face="Arial, Helvetica, sans-serif">Kanji
              :</font></td>
          <td colspan="3" align="left" valign="middle" bgcolor="#CCCCCC"><font size="2" face="Arial, Helvetica, sans-serif"><strong>Last:</strong>
                <input name="member_last_name_kanji" type="text" id="member_last_name_kanji" value="<?php echo $smember_last_name_kanji; ?>" size="15" maxlength="15">
                <strong> First</strong>:<strong>
                <input name="member_first_name_kanji" type="text" id="member_first_name_kanji" value="<?php echo $smember_first_name_kanji; ?>" size="15" maxlength="15">
              </strong></font></td>
          <td align="center" valign="middle" bgcolor="#FFCC00">&nbsp;</td>
          <td width="229" align="center" valign="middle" bgcolor="#000000">
            <div align="center"><font size="2" face="Arial, Helvetica, sans-serif"><strong><font color="#00FFFF">Why
                    enter your name three different ways?</font><font color="#000000"><br>
                          </font> </strong></font></div>
          </td>
        </tr>
        <tr bordercolor="#FFCC00">
          <td height="29" colspan="2" align="center" valign="middle" bgcolor="#DDDDDD">
            <div align="right"><font size="2" face="Arial, Helvetica, sans-serif">Furigana
                :</font></div>
          </td>
          <td colspan="3" align="left" valign="middle" bgcolor="#DDDDDD"><font size="2" face="Arial, Helvetica, sans-serif"> <strong>Last:
                  <input name="member_last_name_furi" type="text" id="member_last_name_furi2" value="<?php echo $smember_last_name_furi; ?>" size="15" maxlength="15">
      First:
      <input name="member_first_name_furi" type="text" id="member_first_name_furi" value="<?php echo $smember_first_name_furi; ?>" size="15" maxlength="15">
          </strong><strong> </strong></font></td>
          <td rowspan="5" align="center" valign="middle" bgcolor="#FFCC00">&nbsp;</td>
          <td width="229" rowspan="5" align="center" valign="middle" bgcolor="#C5C5C5"><font size="2" face="Arial, Helvetica, sans-serif">KokusaiBuhin
              is an International Agent. And, we assist you in acquiring the
              BEST accessories "from Around the World". <br>
      Due to the international nature of our services, it is necessary to provide
      this information in varying forms to different people who may not have
      the ability to operate with non-Western script.</font></td>
        </tr>
        <tr bordercolor="#FFCC00">
          <td height="26" colspan="2" align="right" valign="middle" bgcolor="#CCCCCC"><font size="2" face="Arial, Helvetica, sans-serif"><font color="#FF0000" size="3"><strong>*</strong></font>Romaji
              :</font></td>
          <td colspan="3" align="left" valign="middle" bgcolor="#CCCCCC"><strong><font size="2" face="Arial, Helvetica, sans-serif">Last:
                  <input name="member_last_name" type="text" id="member_last_name" value="<?php echo $smember_last_name; ?>" size="15" maxlength="15">
      First:
      <input name="member_first_name" type="text" id="member_first_name" value="<?php echo $smember_first_name; ?>" size="15" maxlength="15">
          </font> </strong> </td>
        </tr>
        <tr bordercolor="#FFCC00">
          <td height="34" colspan="2" align="left" valign="middle" bgcolor="#DDDDDD"><div align="right"><font size="4" face="Arial, Helvetica, sans-serif"><strong><font size="3" face="Arial, Helvetica, sans-serif"><font color="#FF0000">*</font></font><font size="2">E-mail
                    Address:</font> </strong></font></div>
          </td>
          <td colspan="3" align="left" valign="middle" bgcolor="#DDDDDD"><font size="4" face="Arial, Helvetica, sans-serif"><strong>
            <input name="useremail" type="text" id="useremail" value="<?php echo $suseremail; ?>" size="50" maxlength="50">
          </strong></font> </td>
        </tr>
        <tr bordercolor="#FFCC00">
          <td height="35" colspan="2" align="left" valign="middle" bgcolor="#CCCCCC"><div align="right"><font size="4" face="Arial, Helvetica, sans-serif"><strong><font size="3" face="Arial, Helvetica, sans-serif"><font color="#FF0000">*</font></font><font size="2">Verify
                    E-mail address:</font> </strong></font></div>
          </td>
          <td colspan="3" align="left" valign="middle" bgcolor="#CCCCCC"><font size="2" face="Arial, Helvetica, sans-serif"><strong>
            <input name="useremail2" type="text" id="useremail2" value="<?php echo $suseremail2; ?>" size="50" maxlength="50">
          </strong></font></td>
        </tr>
        <tr bordercolor="#FFCC00">
          <td height="31" colspan="2" align="left" valign="middle" bgcolor="#DDDDDD"><div align="right"><font size="3" face="Arial, Helvetica, sans-serif"><font color="#FF0000" size="5"><strong><font size="3">*</font></strong></font><strong>Country:</strong></font></div>
          </td>
          <td colspan="3" align="left" valign="middle" bgcolor="#DDDDDD"><font size="3" face="Arial, Helvetica, sans-serif">
            <select name="usercountry" size="1">
              <option value="Japan" <?php if (!(strcmp("Japan", "$susercountry"))) {echo "SELECTED";} ?>>Japan</option>
              <option value="Singapore" <?php if (!(strcmp("Singapore", "$susercountry"))) {echo "SELECTED";} ?>>Singapore</option>
              <option value="Hong Kong" <?php if (!(strcmp("Hong Kong", "$susercountry"))) {echo "SELECTED";} ?>>Hong Kong</option>
              <option value="Malaysia" <?php if (!(strcmp("Malaysia", "$susercountry"))) {echo "SELECTED";} ?>>Malaysia</option>
              <option value="Australia" <?php if (!(strcmp("Australia", "$susercountry"))) {echo "SELECTED";} ?>>Australia</option>
              <option value="US Outer Territories" <?php if (!(strcmp("US Outer Territories", "$susercountry"))) {echo "SELECTED";} ?>>US Outer Territories</option>
              <option value="Other" <?php if (!(strcmp("Other", "$susercountry"))) {echo "SELECTED";} ?>>Other</option>
            </select>
          </font></td>
        </tr>
        <tr bordercolor="#FFCC00" bgcolor="#FFFFFF">
          <td height="31" colspan="7"><div align="center"><font size="1"><font face="Arial, Helvetica, sans-serif"><strong>All
                    members will periodically receive the "KB News" E-Bulletin
                    which will contain information on additional features and
                    developments at KokusaiBuhin Dot Com as well as developments
                    in motorcycle customizing from around the world.</strong></font></font></div>
          </td>
        </tr>
        <TR>
          <TH height="25" colspan="7" NOWRAP bgcolor="#FFCC33"><div align="left"><font color="#000000" size="3" face="Arial, Helvetica, sans-serif"><strong>&nbsp;&nbsp;&nbsp;<font size="4">&nbsp;Password-Protect
                    Your Information: Choose or change your login information</font></strong></font></div>
          </TH>
        </TR>
        <TR>
          <td height="24" colspan="2" align="right" valign="middle" bordercolor="#FFCC00" bgcolor="#DDDDDD">
            <div align="right"><font size="2" face="Arial, Helvetica, sans-serif"><strong><font color="#FF0000">*</font>Unique
                  User ID:</strong></font></div>
          </td>
          <td colspan="3" align="left" valign="middle" bordercolor="#FFCC00" bgcolor="#DDDDDD"><font size="2" face="Arial, Helvetica, sans-serif">
      <input name="userid" type="text" id="userid" value="<?php echo $suserid; ?>" size="15" maxlength="10">
      (10 characters maximum)</font> </td>
          <td width="7" align="center" valign="middle" bordercolor="#FFCC00" bgcolor="#FFCC00">&nbsp;</td>
          <td width="229" align="center" valign="middle" bordercolor="#FFCC00" bgcolor="#000000">
            <div align="center"><font size="2" face="Arial, Helvetica, sans-serif"><strong><font color="#FFCC00"> <font color="#00FFFF">Choosing
                      a User Name and Password</font></font><font color="#00FFFF"><br>
                          </font> </strong></font></div>
          </td>
        </TR>
        <TR>
          <td height="26" colspan="2" align="center" valign="middle" bordercolor="#FFCC00" bgcolor="#CCCCCC">
            <div align="right"><font size="2" face="Arial, Helvetica, sans-serif"><font color="#FF0000">*</font>Enter
                Password:</font></div>
          </td>
          <td colspan="3" align="left" valign="middle" bordercolor="#FFCC00" bgcolor="#CCCCCC"><font size="2" face="Arial, Helvetica, sans-serif">
            <input name="userpassword" type="password" id="userpassword" size="15" maxlength="10">
      (10 characters maximum)<strong> </strong></font></td>
          <td width="7" rowspan="5" align="center" valign="middle" bordercolor="#FFCC00" bgcolor="#FFCC00">&nbsp;</td>
          <td width="229" rowspan="5" align="center" valign="middle" bordercolor="#FFCC00" bgcolor="#CCCCCC">
            <div align="justify">
              <p align="center"><font size="2" face="Arial, Helvetica, sans-serif">Choose
                  a unique username and password that is easy to remember but
                  will be difficult or impossible for other people to guess. <br>
                            <br>
          Challenge Phrase and Challenge Response will soon be used for automated
          email password recovery.</font></p>
            </div>
          </td>
        </TR>
        <TR>
          <td height="25" colspan="2" align="right" valign="middle" bordercolor="#FFCC00" bgcolor="#DDDDDD"><font size="2" face="Arial, Helvetica, sans-serif"><font color="#FF0000">*</font>Re-enter
              Password: </font></td>
          <td colspan="3" align="left" valign="middle" bordercolor="#FFCC00" bgcolor="#DDDDDD"><font size="2" face="Arial, Helvetica, sans-serif">
            <input name="userpassword2" type="password" id="userpassword2" size="15" maxlength="10">
          </font></td>
        </TR>
        <TR>
          <td height="26" colspan="2" align="left" valign="middle" bordercolor="#FFCC00" bgcolor="#CCCCCC"><div align="right"><font size="2" face="Arial, Helvetica, sans-serif"><strong>Challenge
                  Phrase:</strong> </font></div>
          </td>
          <td height="26" colspan="3" align="left" valign="middle" bordercolor="#FFCC00" bgcolor="#CCCCCC"><font size="2" face="Arial, Helvetica, sans-serif">
            <input name="user_challenge_phrase" type="text" id="user_challenge_phrase" value="<?php echo $suser_challenge_phrase; ?>" size="50">
          </font></td>
        </TR>
        <TR>
          <td height="25" colspan="2" align="center" valign="middle" bordercolor="#FFCC00" bgcolor="#DDDDDD"><div align="right"><font size="2" face="Arial, Helvetica, sans-serif"><strong>Challenge
                  Response:</strong></font></div>
          </td>
          <td height="25" colspan="3" align="center" valign="middle" bordercolor="#FFCC00" bgcolor="#DDDDDD"><div align="left"><font face="Arial, Helvetica, sans-serif"><font size="2">
              <input name="user_challenge_response" type="text" id="user_challenge_response" value="<?php echo $suser_challenge_response; ?>" size="40" maxlength="40">
            </font></font></div>
          </td>
        </TR>
        <TR>
          <TH height="21" colspan="5" NOWRAP bgcolor="#CCCCCC"><font size="2" face="Arial, Helvetica, sans-serif">Please
              write this information in a SAFE place.</font></TH>
        </TR>
        <TR>
          <td height="26" colspan="7" bordercolor="#FFCC00" bgcolor="#FFCC00"><font color="#000000" size="3" face="Arial, Helvetica, sans-serif"><strong>&nbsp;&nbsp;<font size="4">&nbsp;&nbsp;Your
                  Shipping Information:</font></strong></font></td>
        </TR>
        <TR>
          <td width="91" height="25" align="right" valign="middle" bordercolor="#FFCC00" bgcolor="#DDDDDD">
            <div align="right"><font size="2" face="Arial, Helvetica, sans-serif"></font> </div>
          </td>
          <td colspan="4" align="left" valign="middle" bordercolor="#FFCC00" bgcolor="#DDDDDD">
            <center>
              <font size="2" face="Arial, Helvetica, sans-serif">Please provide
              your exact shipping address below</font>
            </center>
          </td>
          <TH NOWRAP bgcolor="#FFCC33">&nbsp;</TH>
          <td align="center" valign="middle" bgcolor="#000000"><font color="#00FFFF" size="2" face="Arial, Helvetica, sans-serif"><strong>Personal
                Information</strong></font></td>
        </TR>
        <TR>
          <td height="24" align="left" valign="middle" bordercolor="#FFCC00" bgcolor="#CCCCCC">
            <div align="right"><font size="2" face="Arial, Helvetica, sans-serif"><strong>Post
                  Code:&nbsp;&nbsp;</strong></font></div>
          </td>
          <td height="24" colspan="4" align="left" valign="middle" bordercolor="#FFCC00" bgcolor="#CCCCCC"><font size="2" face="Arial, Helvetica, sans-serif">
            <input name="member_ship_postal_code" type="text" id="member_ship_postal_code2" value="<?php echo $smember_ship_postal_code; ?>" size="8" maxlength="8">
          </font></td>
          <TH height="24" NOWRAP bgcolor="#FFCC33">&nbsp;</TH>
          <td rowspan="4" align="center" valign="middle" bgcolor="#CCCCCC"><font size="2" face="Arial, Helvetica, sans-serif">It
              is not necessary to provide this data if you have no plans to make
              a purchase directly from<strong> </strong>the<strong> KB </strong> web
              site. <br>
      For instance, online auction customers do not need to provide this information.</font></td>
        </TR>
        <TR>
          <td height="26" align="left" valign="middle" bordercolor="#FFCC00" bgcolor="#DDDDDD">
            <div align="right"><font size="2" face="Arial, Helvetica, sans-serif"><strong>Prefecture:&nbsp;&nbsp;</strong></font></div>
          </td>
          <td width="48" height="26" align="left" valign="middle" bordercolor="#FFCC00" bgcolor="#DDDDDD"><font size="2" face="Arial, Helvetica, sans-serif">
            <input name="member_ship_pref_prov" type="text" id="member_ship_pref_prov2" value="<?php echo $smember_ship_pref_prov; ?>" size="8" maxlength="8">
          </font></td>
          <td colspan="2" align="center" valign="middle" bordercolor="#FFCC00" bgcolor="#DDDDDD">&nbsp;</td>
          <td width="271" align="left" valign="middle" bordercolor="#FFCC00" bgcolor="#DDDDDD"><font size="2" face="Arial, Helvetica, sans-serif"><strong>City:
            <input name="member_ship_city" type="text" id="member_ship_city" value="<?php echo $smember_ship_city; ?>">
          </strong></font><font size="2" face="Arial, Helvetica, sans-serif">&nbsp;</font>          </td>
          <TH height="26" NOWRAP bgcolor="#FFCC33">&nbsp;</TH>
        </TR>
        <TR>
          <td height="29" align="left" valign="middle" bordercolor="#FFCC00" bgcolor="#CCCCCC">
            <div align="right"><font size="2" face="Arial, Helvetica, sans-serif"><strong>Address:&nbsp;&nbsp;</strong></font></div>
          </td>
          <td height="29" colspan="4" align="left" valign="middle" bordercolor="#FFCC00" bgcolor="#CCCCCC"><font size="2" face="Arial, Helvetica, sans-serif">
            <input name="member_ship_address_1" type="text" id="member_ship_address_1" value="<?php echo $smember_ship_address_1; ?>" size="50" maxlength="50">
          </font></td>
          <TH height="29" NOWRAP bgcolor="#FFCC33">&nbsp;</TH>
        </TR>
        <TR>
          <td height="24" align="right" valign="middle" bordercolor="#FFCC00" bgcolor="#DDDDDD"><font size="2" face="Arial, Helvetica, sans-serif"><strong>&nbsp;</strong></font></td>
          <td height="24" colspan="4" bordercolor="#FFCC00" bgcolor="#DDDDDD"><font size="2" face="Arial, Helvetica, sans-serif">
            <input name="member_ship_address_2" type="text" id="member_ship_address_2" value="<?php echo $smember_ship_address_2; ?>" size="50" maxlength="50">
          </font></td>
          <TH height="24" NOWRAP bgcolor="#FFCC33">&nbsp;</TH>
        </TR>
        <tr bordercolor="#000000">
          <td height="27" colspan="7" bgcolor="#FFCC00"><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"><strong>&nbsp;<font size="4">&nbsp;&nbsp;&nbsp;Advanced
                  Services: (Optional)</font></strong></font></td>
        </tr>
        <tr bordercolor="#000000">
          <td align="center" valign="middle" bgcolor="#CCCCCC"><font size="2" face="Arial, Helvetica, sans-serif">
            <input name="account_enable" type="checkbox" disabled="true" id="account_enable" value="1" checked>
            </font>
          <td height="21" colspan="4" align="left" valign="middle" bgcolor="#CCCCCC"> <font size="2" face="Arial, Helvetica, sans-serif"><strong>Enable
                My Member Account <font color="#339900">(Required)</font></strong></font>
<td align="center" valign="middle" bgcolor="#FFCC33"><div align="justify"><font size="2" face="Arial, Helvetica, sans-serif"><strong>&nbsp;</strong></font></div>
          </td>
          <td align="center" valign="middle" bgcolor="#000000"><font size="2" face="Arial, Helvetica, sans-serif"><strong><font color="#00FFFF">NOTICE</font></strong></font></td>
        </tr>
        <tr bordercolor="#000000">
          <td align="center" valign="middle" bgcolor="#DDDDDD"> <font size="2" face="Arial, Helvetica, sans-serif">
            <input name="wishlist_enable" type="checkbox" id="wishlist_enable" value="1" checked>
          </font></td>
          <td height="23" colspan="4" align="left" valign="middle" bgcolor="#DDDDDD"><p><font size="2" face="Arial, Helvetica, sans-serif"><strong>Activate
                  My Personal Wishlist (available Fall/Winter 2003)</strong></font></p>
          </td>
          <td rowspan="6" align="center" valign="middle" bgcolor="#FFCC33"><font size="2" face="Arial, Helvetica, sans-serif">&nbsp;</font></td>
          <td rowspan="6" align="center" valign="middle" bgcolor="#CCCCCC"><font size="2" face="Arial, Helvetica, sans-serif">Shopping
              cart and Wishlist access require complete personal information
              to be provided. <br>
      Your personal information wil not be divulged to any third party without
      your permission.</font></td>
        </tr>
        <tr bordercolor="#000000">
          <td height="23" align="center" valign="middle" bgcolor="#CCCCCC"><font size="2" face="Arial, Helvetica, sans-serif">
            <input name="email_offers" type="checkbox" id=="email_offers" value="1" checked>
          </font></td>
          <td height="23" colspan="4" align="left" valign="middle" bgcolor="#CCCCCC"><font size="2" face="Arial, Helvetica, sans-serif"><strong>E-mail
                me with monthly special offers</strong></font></td>
        </tr>
        <tr bordercolor="#000000">
          <td height="25" align="center" valign="middle" bgcolor="#DDDDDD"><font size="2" face="Arial, Helvetica, sans-serif">
            <input name="partner_email" type="checkbox" id="partner_email" value="1" checked>
          </font></td>
          <td height="25" colspan="4" align="left" valign="middle" bgcolor="#DDDDDD"><strong><font size="2" face="Arial, Helvetica, sans-serif">Allow
                Email from our trusted partners</font></strong></td>
        </tr>
        <tr bordercolor="#000000">
          <td height="24" align="center" valign="middle" bgcolor="#CCCCCC"><font size="2" face="Arial, Helvetica, sans-serif">
            <input name="onsale_email" type="checkbox" id="onsale_email" value="1" checked>
          </font></td>
          <td height="24" colspan="4" align="left" valign="middle" bgcolor="#CCCCCC"><font size="2" face="Arial, Helvetica, sans-serif"><strong>Email
                me when an item on my Wishlist is on sale.</strong></font></td>
        </tr>
        <tr bordercolor="#000000">
          <td height="25" align="center" valign="middle" bgcolor="#DDDDDD"><font size="2" face="Arial, Helvetica, sans-serif">
            <input name="forum_access" type="checkbox" id="forum_access" value="1" checked>
          </font></td>
          <td height="25" colspan="4" align="left" valign="middle" bgcolor="#DDDDDD"><font size="2" face="Arial, Helvetica, sans-serif"><strong>Enable
                Forum Access: <font color="#FF0000">(available Summer 2004)</font></strong></font></td>
        </tr>
        <tr bordercolor="#000000">
          <td height="19" align="center" valign="middle" bgcolor="#CCCCCC"><font size="2" face="Arial, Helvetica, sans-serif">
            <input name="custom_cruzer_access" type="checkbox" id="custom_cruzer_access" value="1" checked>
          </font></td>
          <td height="19" colspan="4" align="left" valign="middle" bgcolor="#CCCCCC"><font size="2" face="Arial, Helvetica, sans-serif"><strong>Enable "Custom
                Cruzer" Access: <font color="#FF0000">(available Spring
                2004)</font></strong></font></td>
        </tr>
        <TR bgcolor="#FFCC33">
          <td height="27" colspan="7"><div align="left"><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"><strong>&nbsp;<font size="4">&nbsp;&nbsp;&nbsp;Your
                    Public Profile:</font></strong></font></div>
          </td>
        </TR>
        <TR>
          <td height="21" colspan="5" bgcolor="#DDDDDD"><center>
              <strong><font size="3" face="Arial, Helvetica, sans-serif">Tell
              us a little bit about your ride. </font></strong>
            </center>
          </td>
          <TD bgcolor="#FFCC00">&nbsp;</TD>
          <TD bgcolor="#000000"><center>
              <font color="#00FFFF" size="2" face="Arial, Helvetica, sans-serif"><strong>Public
              Information</strong></font><strong> </strong>
            </center>
          </TD>
        </TR>
        <TR>
          <td height="16" colspan="2" align="right" valign="middle" bgcolor="#CCCCCC"><strong>Year:</strong></td>
          <TD width="81" bgcolor="#CCCCCC"><select name="member_year" id="select">
            <option value="1990" <?php if (!(strcmp(1990, "$smember_year"))) {echo "SELECTED";} ?>>1990</option>
            <option value="1991" <?php if (!(strcmp(1991, "$smember_year"))) {echo "SELECTED";} ?>>1991</option>
            <option value="1992" <?php if (!(strcmp(1992, "$smember_year"))) {echo "SELECTED";} ?>>1992</option>
            <option value="1993" <?php if (!(strcmp(1993, "$smember_year"))) {echo "SELECTED";} ?>>1993</option>
            <option value="1994" <?php if (!(strcmp(1994, "$smember_year"))) {echo "SELECTED";} ?>>1994</option>
            <option value="1995" <?php if (!(strcmp(1995, "$smember_year"))) {echo "SELECTED";} ?>>1995</option>
            <option value="1996" <?php if (!(strcmp(1996, "$smember_year"))) {echo "SELECTED";} ?>>1996</option>
            <option value="1997" <?php if (!(strcmp(1997, "$smember_year"))) {echo "SELECTED";} ?>>1997</option>
            <option value="1998" <?php if (!(strcmp(1998, "$smember_year"))) {echo "SELECTED";} ?>>1998</option>
            <option value="1999" <?php if (!(strcmp(1999, "$smember_year"))) {echo "SELECTED";} ?>>1999</option>
            <option value="2000" <?php if (!(strcmp(2000, "$smember_year"))) {echo "SELECTED";} ?>>2000</option>
            <option value="2001" <?php if (!(strcmp(2001, "$smember_year"))) {echo "SELECTED";} ?>>2001</option>
            <option value="2002" <?php if (!(strcmp(2002, "$smember_year"))) {echo "SELECTED";} ?>>2002</option>
            <option value="2003" <?php if (!(strcmp(2003, "$smember_year"))) {echo "SELECTED";} ?>>2003</option>
            <option value="2004" <?php if (!(strcmp(2004, "$smember_year"))) {echo "SELECTED";} ?>>2004</option>
            </select>
          </TD>
          <TD width="63" bgcolor="#CCCCCC"><strong>Make:</strong></TD>
          <TD bgcolor="#CCCCCC">          <strong>
            <select name="member_make" size="1" id="member_make">
              <option value="Select a Maker" <?php if (!(strcmp("Select a Maker", "$smember_make"))) {echo "SELECTED";} ?>>Select a Maker</option>
              <option value="Harley-Davidson" <?php if (!(strcmp("Harley-Davidson", "$smember_make"))) {echo "SELECTED";} ?>>Harley-Davidson</option>
              <option value="Honda" <?php if (!(strcmp("Honda", "$smember_make"))) {echo "SELECTED";} ?>>Honda</option>
              <option value="Kawasaki" <?php if (!(strcmp("Kawasaki", "$smember_make"))) {echo "SELECTED";} ?>>Kawasaki</option>
              <option value="Suzuki" <?php if (!(strcmp("Suzuki", "$smember_make"))) {echo "SELECTED";} ?>>Suzuki</option>
              <option value="Yamaha" <?php if (!(strcmp("Yamaha", "$smember_make"))) {echo "SELECTED";} ?>>Yamaha</option>
              <option value="Other" <?php if (!(strcmp("Other", "$smember_make"))) {echo "SELECTED";} ?>>Other</option>
            </select>
          </strong></TD>
          <TD bgcolor="#FFCC00">&nbsp;</TD>
          <TD rowspan="7" align="center" valign="middle" bgcolor="#CCCCCC"><font size="2" face="Arial, Helvetica, sans-serif">In
              addition to your UserID, the information in your public profile
              will be visible to other members in the forums and "Custom
              Cruzer" areas when they become available to the public.</font></TD>
        </TR>
        <TR>
          <td height="16" colspan="2" align="right" valign="middle" bgcolor="#DDDDDD">&nbsp;</td>
          <TD colspan="2" bgcolor="#DDDDDD">&nbsp;</TD>
          <TD bgcolor="#DDDDDD">&nbsp;</TD>
          <TD bgcolor="#FFCC00">&nbsp;</TD>
        </TR>
        <TR>
          <td height="16" colspan="2" align="right" valign="middle" bgcolor="#CCCCCC"><strong>Model: </strong></td>
          <TD colspan="2" bgcolor="#CCCCCC"><strong>
            <input name="member_model" type="text" id="member_model4" value="<?php echo $member_model; ?>">
          </strong></TD>
          <TD align="center" valign="middle" bgcolor="#CCCCCC"> <div align="left"><font size="1" face="Arial, Helvetica, sans-serif">&nbsp;&nbsp; examples;
                VT-600C, NV-400C, SteedVLX etc.</font></div></TD>
          <TD bgcolor="#FFCC00">&nbsp;</TD>
        </TR>
        <TR>
          <td colspan="2" rowspan="4" align="right" valign="middle" bgcolor="#DDDDDD"><font size="3" face="Arial, Helvetica, sans-serif"><strong>Personal
                Comments:</strong></font></td>
          <TD colspan="3" rowspan="4" bgcolor="#DDDDDD"><font size="3" face="Arial, Helvetica, sans-serif">
            <textarea 
                                name="member_comment" cols="60" rows="3" wrap="VIRTUAL" id="member_comment"><?php echo $smember_comment; ?></textarea>
</font></TD>
          <TD bgcolor="#FFCC00">&nbsp;</TD>
        </TR>
        <TR>
          <TD bgcolor="#FFCC00">&nbsp;</TD>
        </TR>
        <TR>
          <TD bgcolor="#FFCC00">&nbsp;</TD>
        </TR>
        <TR>
          <TD height="21" bgcolor="#FFCC00">_</TD>
        </TR>
        <TR bgcolor="#CCCCCC">
          <TH COLSPAN="7" NOWRAP>
            <div align="left"><font color="#FF0000" size="5" face="Arial, Helvetica, sans-serif"> *</font><font face="Arial, Helvetica, sans-serif"> =
                Indicates a Mandatory Field</font></div>
          </TH>
        </TR>
      </TABLE>
      <TABLE WIDTH="790" BORDER="0" align="center" cellpadding="0" cellspacing="0">
        <TR bgcolor="#FFFFFF"> 
          <TH width="66%" height="44" NOWRAP> <font size="3" face="Arial, Helvetica, sans-serif"> 
            <INPUT name="SUBMIT" TYPE="SUBMIT" VALUE="JOIN KokusaiBuhin Dot Com">
            <img src="../images/t_spacer.gif" width="118" height="20" border="0" align="absmiddle"> 
            <INPUT name="RESET" TYPE="RESET" VALUE="Erase This Form">
            </font></TH>
        </TR>
        <TR bgcolor="#FFFFFF"> 
          <TH NOWRAP>&nbsp;</TH>
        </TR>
      </TABLE>
      <font size="3" face="Arial, Helvetica, sans-serif">
      <input type="HIDDEN" name="action" value="register">
</font>
    </CENTER>
  </DIV>
</FORM>
</span> 
<?php
}

function create_account() {
  global $userid, $userpassword, $userpassword2, $usercountry, $useremail, $member_make, $member_model, $member_year, $member_comment;
   global $user_challenge_phrase, $user_challenge_response, $member_first_name, $member_first_name_furi, $member_first_name_kanji;
   global $member_last_name, $member_last_name_furi, $member_last_name_kanji, $member_ship_postal_code, $member_ship_pref_prov;
   global $member_ship_city, $member_ship_address_1, $member_ship_address_2, $account_enable, $wishlist_enable, $email_offers;
   global $partner_email, $onsale_email, $forum_access, $custom_cruzer_access, $unused_flag8, $unused_flag9, $unused_flag10;
   global $unused_flag11, $unused_flag12, $unused_flag13, $unused_flag14, $unused_flag15;
   global $default_dbname, $user_tablename;
   
   if(!empty($userid)) {
   $suserid = $userid;
   $susercountry =  $usercountry;
   $suseremail  = $useremail;
   $smember_make =  $member_make;
   $smember_model = $member_model;
   $smember_year = $member_year;
   $smember_comment = $member_comment;
   $suser_challenge_phrase = $user_challenge_phrase;
   $suser_challenge_response = $user_challenge_response;
   $smember_first_name = $member_first_name;
   $smember_first_name_furi = $member_first_name_furi;
   $smember_first_name_kanji = $member_first_name_kanji;
   $smember_last_name = $member_last_name;
   $smember_last_name_furi = $member_last_name_furi;
   $smember_last_name_kanji = $member_last_name_kanji;
   $smember_ship_postal_code = $member_ship_postal_code;
   $smember_ship_pref_prov = $member_ship_pref_prov;
   $smember_ship_city = $member_ship_city;
   $smember_ship_address_1 = $member_ship_address_1;
   $smember_ship_address_2 = $member_ship_address_2;
   $saccount_enable = $account_enable;
   $swishlist_enable = $wishlist_enable;
   $semail_offers = $email_offers;
   $spartner_email = $partner_email;
   $sonsale_email = $onsale_email;
   $sforum_access = $forum_access;
   $scustom_cruzer_access = $custom_cruzer_access;
        }
   if(empty($userid)) error_message("You did not enter your desired User ID!");
   if(empty($userpassword)) error_message("You did not enter your desired password!");
   if(strlen($userpassword) < 4 ) error_message("Your password is too short! Please enter a password of 5 characters or more");
   if(empty($userpassword2)) 
                  error_message("Retype your password for verification!");
   if(empty($member_last_name)) error_message("Please enter your last name!");
    if(empty($member_first_name)) error_message("Please enter your first name!");
   if(empty($useremail)) error_message("Please enter your email address!");
   if(empty($member_comment)) $member_comment = "No Comment.";
   if($userpassword != $userpassword2) error_message("Your desired password and retyped password do not match!");
      $link_id = db_connect($default_dbname);
   if(in_use($userid)) error_message("$userid is in use. Please choose a different ID.");
		 
   $query = "INSERT INTO user VALUES(NULL, '$userid', password('$userpassword'), '$usercountry', '$useremail', '$member_make', '$member_model', '$member_year', '$member_comment', '$user_challenge_phrase', '$user_challenge_response', curdate(), NULL, '1', NULL, '$member_first_name', '$member_first_name_furi', '$member_first_name_kanji', '$member_last_name', '$member_last_name_furi', '$member_last_name_kanji', NULL, NULL, NULL, NULL, NULL, '$member_ship_postal_code', '$member_ship_pref_prov', '$member_ship_city', '$member_ship_address_1', '$member_ship_address_2', '$account_enable', '$wishlist_enable', '$email_offers', '$partner_email', '$onsale_email', '$forum_access', '$custom_cruzer_access', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)";
   global $default_dbname, $user_tablename, $username;
 $username = $member_first_name . " " .$member_last_name;
		
   $result = mysql_query($query);
   if(!$result) error_message(sql_error());
   $usernumber = mysql_insert_id($link_id);
   html_header();
?>
<CENTER>
  <H3><span id="Layer3" style="position:absolute; width:691px; height:115px; z-index:3; left: 42px; top: 1243px;"> 
    <CENTER>
      <H3> <?php echo $username ?>, thank you for registering with us! </H3>
    </CENTER>
    <DIV ALIGN="CENTER">
      <CENTER>
        <TABLE WIDTH="90%" BORDER="1" align="center" cellpadding="0" cellspacing="0" bordercolor="#990000">
          <TR> 
            <TH WIDTH="30%" NOWRAP> <div align="right">Member Number : </div></TH>
            <TD colspan="3"><?php echo $usernumber ?></TD>
          </TR>
          <TR> 
            <TH WIDTH="30%" NOWRAP> <div align="right">Member ID : </div></TH>
            <TD colspan="3"><?php echo $userid ?></TD>
          </TR>
          <TR> 
            <TH WIDTH="30%" NOWRAP> <div align="right"> Your Password : </div></TH>
            <TD colspan="3"><?php echo $userpassword ?>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (Please
              keep in a safe place)</TD>
          </TR>
          <TR> 
            <TH WIDTH="30%" NOWRAP> <div align="right">Full Name : </div></TH>
            <TD colspan="3"><?php echo $username ?></TD>
          </TR>
          <TR> 
            <TH WIDTH="30%" NOWRAP> <div align="right">Country : </div></TH>
            <TD colspan="3"><?php echo $usercountry ?></TD>
          </TR>
          <TR> 
            <TH WIDTH="30%" NOWRAP> <div align="right">Correspondence Email : </div></TH>
            <TD colspan="3"><?php echo $useremail ?></TD>
          </TR>
          <TR> 
            <TH WIDTH="30%" NOWRAP> <div align="right">Comment : </div></TH>
            <TD colspan="3"><?php echo htmlspecialchars($member_comment) ?></TD>
          </TR>
          <TR bgcolor="#FFFFFF"> 
            <TH height="51" colspan="4" NOWRAP><img src="../images/continue.gif" width="156" height="33" border="0" usemap="#MapMap"></TH>
          </TR>
        </TABLE>
      </CENTER>
    </DIV>
    <map name="MapMap">
      <area shape="rect" coords="2,0,155,32" href="../index.php">
    </map>
  </span></H3>
</CENTER>
<DIV ALIGN="CENTER"></DIV>
<?php
	html_footer();
}

switch($action) {
   case "register": 
      create_account();
	 break;
   default:
      html_header();
      register_form();
      html_footer();
	 break;
}
?>
<map name="Map">
  <area shape="rect" coords="2,0,155,32" href="../index.php">
</map>
?>
Any and all suggestions appreciated.

Thanks
-----------------------
SteedVLX
tsg
Forum Contributor
Posts: 142
Joined: Sun Jan 12, 2003 9:22 pm
Location: SE, Alabama
Contact:

Post by tsg »

I am not going to try to desect that code, but at a glance, I see a couple of things:
1) You need to but the SQL statement at the top of the page and do your error checking there. IF an error, THEN show the form again. The way it is now, it is showing the form then checking for errors.

PLUS

Code: Select all

<input name="member_last_name_kanji" type="text" id="member_last_name_kanji" value="<?php echo $smember_last_name_kanji; ?>" size="15" maxlength="15">
You have in the echo statement "$smember_last_name_kanji;" when your field name is "member_last_name_kanji". It is checking the errors AFTER the form has been sent, so it is not getting the code where you :
" $smember_first_name_furi = $member_first_name_furi; "

I hope that helps. I didn't entirely read the code, so I might be worng myself.

Tim
User avatar
steedvlx
Forum Contributor
Posts: 122
Joined: Wed Jun 11, 2003 10:54 pm
Location: Osaka, Japan

Post by steedvlx »

Thanks for the reply, but I believe you missed the

Code: Select all

<?php
function create_account()
?>
that the MySQL is part of. It is run by a switch on the variable $action. when $action = register, the function that tests the data and adds the record is run. It really doesn't matter where it sits in the code as far as I know.

I should be able to assign all of those session values just prior to the error-testing, since I know that all the form values are available at that point. but it ain't getting the job done.

If the form has been processed, then the session values should be available regardless of the error status. Then when the form reloads the echo values should show data in those fields.

Why do I have the feeling this is going to get into POST arrays or something equally wicked?

Any help gratefully groveled for.
--------------------
SteedVLX
m3rajk
DevNet Resident
Posts: 1191
Joined: Mon Jun 02, 2003 3:37 pm

Post by m3rajk »

that's reallllllllly long, so i don't wanna read it. this has issues witht eh db i'm trying to work through, but does PERFECT error checking.

feeel free to get ideas from it

http://24.91.157.113/findyourdesire/join.showcode
Post Reply