Problems, need help? Have a tip or advice? Post it here.
9 posts Page 1 of 1
Hello all :)
I have spent hours and hours to find out why I cannot add extra forms fields in the members module.
Although I fill the required (new) fields,every time I try to add a user from the front-end it says something like:
[color=#FF0040
member_fthname: required fields cannot be empty
member_address: required fields cannot be empty
member_state: required fields cannot be empty
member_city: required fields cannot be empty
member_pc: required fields cannot be empty
member_dob: required fields cannot be empty
member_mob: required fields cannot be empty
member_cardnumber: required fields cannot be empty[/color]

But I can add users from the admin section...

Help!!!
EliasSek, there may be problem with validators. But hours can be also spent guessing )
Post your code. :)
Hello and thank you trendoman :D

Here is the code of index.php

Code: Select all
<?php require_once( '../admin/cms.php' ); ?>

<cms:template clonable='1' title='Members'>

    <cms:member_define_fields />
   
            <cms:editable name='member_lastname' label='Επώνυμο' type='text' required='1' />
            <cms:editable name='member_fthname' label='Πατρώνυμο' type='text' required='1' />
            <cms:editable name='member_address' label='Οδός / Αριθμός' type='text' required='1' />
            <cms:editable name='member_state' label='Περιοχή' type='text' required='1' />
            <cms:editable name='member_city' label='Πόλη' type='text' required='1' />
            <cms:editable name='member_pc' label='TK' type='text' required='1' />
            <cms:editable name='member_dob' label='Ημερομηνία Γέννησης' type='text' required='1' />
            <cms:editable name='member_mob' label='Κινητό Τηλέφωνο' type='text' required='1' />
            <cms:editable name='member_cardnumber' label='Αριθμός Κάρτας' type='text' required='1' />
           

</cms:template>




<?php COUCH::invoke(); ?>



and here is the code of register.php

Code: Select all
<!-- every template dealing with members has to begin with the following tag -->
    <cms:member_check_login />

    <cms:if k_member_logged_in >
        <!-- what is an already logged-in member doing on this page? Send back to homepage. -->
        <cms:redirect k_site_link />
    </cms:if>
   
    <!-- are there any success messages to show from previous actions? -->
    <cms:set success_msg="<cms:get_flash 'success_msg' />" />
    <cms:if success_msg >
        <div class="notice">
            <cms:if success_msg='1' >
                Your account has been created successfully and we have sent you an email.<br />
                Please click the verification link within that mail to activate your account.
            <cms:else />
                Activation was successful! You can now log in!<br />
                <a href="<cms:member_login_link />">Login</a>
            </cms:if>
        </div>
    <cms:else />
       
        <!-- now the real work -->
        <cms:set action="<cms:gpc 'act' method='get'/>" />
       
        <!-- is the visitor here by clicking the account-activation link we emailed? -->
        <cms:if action='activate' >
            <h1>Activate account</h1>
       
            <cms:member_process_activation />
           
            <cms:if k_success >
                 <cms:set_flash name='success_msg' value='2' />
                 <cms:redirect k_page_link />         
            <cms:else />
                <cms:show k_error />
            </cms:if>
       
        <cms:else />
       
            <!-- show the registration form -->
            <h2>ΑΙΤΗΣΗ ΕΓΓΡΑΦΗΣ ΚΑΡΤΑΣ ΜΕΛΟΥΣ</h2>
            <h4>Παρακαλώ συμπληρώστε τη φόρμα με τα απαραίτητα πεδία</h4><br><br>
                        <div class="clearfix"></div>

            <cms:form enctype="multipart/form-data" method='post' anchor='0'>
                <cms:if k_success >
                    <!--
                        The 'member_process_registration_form' tag below expects fields named
                        'member_displayname', 'member_name' (optional), 'member_email',
                        'member_password' and 'member_password_repeat'
                    -->
                    <cms:member_process_registration_form
                        member_lastname=frm_member_lastname
                        member_fthname=frm_member_fthname
                        member_address=frm_member_address
                        member_state=frm_member_state
                        member_city=frm_member_city
                        member_pc=frm_member_pc
                        member_dob=frm_member_dob
                        member_mob=frm_member_mob
                        member_cardnumber=frm_member_cardnumber
                    />
                   
                    <cms:if k_success >
                        <cms:set_flash name='success_msg' value='1' />
                        <cms:redirect k_page_link />
                    </cms:if>
                </cms:if>

                <cms:if k_error >
                    <font color='red'><cms:each k_error ><cms:show item /><br /></cms:each></font>
                </cms:if>
               
                <fieldset>

                                <div class="eight columns">
                                <label for="fname">ΟΝΟΜΑ:</label>
                                <cms:input name='member_displayname' type='text' style="width:100%" /><br>
                                </div>


                                <div class="eight columns">
                                <label for="sname" >ΕΠΩΝΥΜΟ:</label>
                                <cms:input name='member_lastname' type='text' style="width:100%" /><br>
                                </div>


                                <div class="eight columns">
                                <label for="fthname" >ΠΑΤΡΩΝΥΜΟ:</label>
                                <input name="member_fthname" type="text" style="width: 100%;" required  /><br>
                                </div>


                                <div class="four columns">
                                <label for="address" >ΟΔΟΣ / ΑΡΙΘΜΟΣ:</label>
                                <input name="member_address" type="text"  style="width: 90%;" required  /><br>
                                </div>

                                <div class="four columns right">
                                <label for="state" >ΠΕΡΙΟΧΗ:</label>
                                <input name="member_state" type="text"style="width: 100%;"  /><br>
                                </div>

                                <div class="four columns">
                                <label for="city" >ΠΟΛΗ:</label>
                                <input name="member_city" type="text" style="width: 90%;" required  /><br>
                                </div>

                                <div class="four columns right">
                                <label for="pc" >ΤΚ:</label>
                                <input name="member_pc" type="text" style="width: 100%;"  /><br>
                                </div>

                                <div class="eight columns">
                                <label for="dob">ΗΜΕΡΟΜΗΝΙΑ ΓΕΝΝΗΣΗΣ:</label>
                                <input name="member_dob" type="date"  style="width: 100%;" required /><br>
                                </div>


                                <div class="eight columns"><br>
                                <label for="mob" >ΚΙΝΗΤΟ:</label>
                                <input name="member_mob" type="text" style="width: 100%;" required /><br>
                                </div>


                                <div class="eight columns">
                                <label for="email" >EMAIL:</label>
                                <cms:input name='member_email' type='text' style="width: 100%;" /><br>
                                </div>

                                <div class="eight columns">
                                <label for="cardnumber" >Νο ΚΑΡΤΑΣ:</label>
                                <input name="member_cardnumber" type="text" style="width: 100%;" required  /><br>
                                </div>

                                <div class="eight columns">
                                <label for="pass" >ΚΩΔΙΚΟΣ:</label>
                                <cms:input name='member_password' type='password' style="width: 100%;" /><br>
                                </div>

                                <div class="eight columns">
                                <label for="repeatpass" >ΕΠΑΝΑΛΗΨΗ ΚΩΔΙΚΟΥ:</label>
                                 <cms:input name='member_password_repeat' type='password' style="width: 100%;" /><br>
                                </div>

            </fieldset>                   
               
                <input type="submit" name="submit" value="ΔΗΜΙΟΥΡΓΙΑ"/>
                <br><br><br>
            </cms:form>
           
        </cms:if>
    </cms:if>   
    </div>
    </div>
    </div>


    <!-- Sidebar -->
    <div class="four floated sidebar right">
        <aside class="sidebar">


        </aside>
    </div>
    <!-- Sidebar / End -->
    </div>
    <?php include("../includes/footer.php"); ?>


</body>
</html>

<?php COUCH::invoke(); ?>
I'll take a look into it. Meanwhile, can you check a similar thread? Seems like this has been resolved http://www.couchcms.com/forum/viewtopic.php?f=4&t=9020
I have already read this solution, but whatever I do it doesn't seem to work :/
By the way, does your 'register.php' has a proper start? You didn't seem to post full template code, as with 'index.php'.
Here's the full code of register.php

Code: Select all
<?php require_once( '../admin/cms.php' ); ?>
<?php $thisPage="Εγγραφή"; ?>
    <cms:template title='Registration' hidden='1' />
<?php include("../includes/header.php"); ?>

<div id="content">




<!-- 960 Container -->
<div class="container floated">

    <!-- Page Content -->
    <div class="eleven floated">
        <div class="shop-page page-content">
       
            <div class="eleven columns">



  <!-- every template dealing with members has to begin with the following tag -->
    <cms:member_check_login />

    <cms:if k_member_logged_in >
        <!-- what is an already logged-in member doing on this page? Send back to homepage. -->
        <cms:redirect k_site_link />
    </cms:if>
   
    <!-- are there any success messages to show from previous actions? -->
    <cms:set success_msg="<cms:get_flash 'success_msg' />" />
    <cms:if success_msg >
        <div class="notice">
            <cms:if success_msg='1' >
                Your account has been created successfully and we have sent you an email.<br />
                Please click the verification link within that mail to activate your account.
            <cms:else />
                Activation was successful! You can now log in!<br />
                <a href="<cms:member_login_link />">Login</a>
            </cms:if>
        </div>
    <cms:else />
       
        <!-- now the real work -->
        <cms:set action="<cms:gpc 'act' method='get'/>" />
       
        <!-- is the visitor here by clicking the account-activation link we emailed? -->
        <cms:if action='activate' >
            <h1>Activate account</h1>
       
            <cms:member_process_activation />
           
            <cms:if k_success >
                 <cms:set_flash name='success_msg' value='2' />
                 <cms:redirect k_page_link />         
            <cms:else />
                <cms:show k_error />
            </cms:if>
       
        <cms:else />
       
            <!-- show the registration form -->
            <h2>ΑΙΤΗΣΗ ΕΓΓΡΑΦΗΣ ΚΑΡΤΑΣ ΜΕΛΟΥΣ</h2>
            <h4>Παρακαλώ συμπληρώστε τη φόρμα με τα απαραίτητα πεδία</h4><br><br>
                        <div class="clearfix"></div>

            <cms:form enctype="multipart/form-data" method='post' anchor='0'>
                <cms:if k_success >
                    <!--
                        The 'member_process_registration_form' tag below expects fields named
                        'member_displayname', 'member_name' (optional), 'member_email',
                        'member_password' and 'member_password_repeat'
                    -->
                    <cms:member_process_registration_form
                        member_lastname=frm_member_lastname
                        member_fthname=frm_member_fthname
                        member_address=frm_member_address
                        member_state=frm_member_state
                        member_city=frm_member_city
                        member_pc=frm_member_pc
                        member_dob=frm_member_dob
                        member_mob=frm_member_mob
                        member_cardnumber=frm_member_cardnumber
                    />
                   
                    <cms:if k_success >
                        <cms:set_flash name='success_msg' value='1' />
                        <cms:redirect k_page_link />
                    </cms:if>
                </cms:if>

                <cms:if k_error >
                    <font color='red'><cms:each k_error ><cms:show item /><br /></cms:each></font>
                </cms:if>
               
                <fieldset>

                                <div class="eight columns">
                                <label for="fname">ΟΝΟΜΑ:</label>
                                <cms:input name='member_displayname' type='text' style="width:100%" /><br>
                                </div>


                                <div class="eight columns">
                                <label for="sname" >ΕΠΩΝΥΜΟ:</label>
                                <cms:input name='member_lastname' type='text' style="width:100%" /><br>
                                </div>


                                <div class="eight columns">
                                <label for="fthname" >ΠΑΤΡΩΝΥΜΟ:</label>
                                <input name="member_fthname" type="text" style="width: 100%;" required  /><br>
                                </div>


                                <div class="four columns">
                                <label for="address" >ΟΔΟΣ / ΑΡΙΘΜΟΣ:</label>
                                <input name="member_address" type="text"  style="width: 90%;" required  /><br>
                                </div>

                                <div class="four columns right">
                                <label for="state" >ΠΕΡΙΟΧΗ:</label>
                                <input name="member_state" type="text"style="width: 100%;"  /><br>
                                </div>

                                <div class="four columns">
                                <label for="city" >ΠΟΛΗ:</label>
                                <input name="member_city" type="text" style="width: 90%;" required  /><br>
                                </div>

                                <div class="four columns right">
                                <label for="pc" >ΤΚ:</label>
                                <input name="member_pc" type="text" style="width: 100%;"  /><br>
                                </div>

                                <div class="eight columns">
                                <label for="dob">ΗΜΕΡΟΜΗΝΙΑ ΓΕΝΝΗΣΗΣ:</label>
                                <input name="member_dob" type="date"  style="width: 100%;" required /><br>
                                </div>


                                <div class="eight columns"><br>
                                <label for="mob" >ΚΙΝΗΤΟ:</label>
                                <input name="member_mob" type="text" style="width: 100%;" required /><br>
                                </div>


                                <div class="eight columns">
                                <label for="email" >EMAIL:</label>
                                <cms:input name='member_email' type='text' style="width: 100%;" /><br>
                                </div>

                                <div class="eight columns">
                                <label for="cardnumber" >Νο ΚΑΡΤΑΣ:</label>
                                <input name="member_cardnumber" type="text" style="width: 100%;" required  /><br>
                                </div>

                                <div class="eight columns">
                                <label for="pass" >ΚΩΔΙΚΟΣ:</label>
                                <cms:input name='member_password' type='password' style="width: 100%;" /><br>
                                </div>

                                <div class="eight columns">
                                <label for="repeatpass" >ΕΠΑΝΑΛΗΨΗ ΚΩΔΙΚΟΥ:</label>
                                 <cms:input name='member_password_repeat' type='password' style="width: 100%;" /><br>
                                </div>

            </fieldset>                   
               
                <input type="submit" name="submit" value="ΔΗΜΙΟΥΡΓΙΑ"/>
                <br><br><br>
            </cms:form>
           
        </cms:if>
    </cms:if>   
    </div>
    </div>
    </div>

    </div>
    <?php include("../includes/footer.php"); ?>


</body>
</html>

<?php COUCH::invoke(); ?>



and heres the code of header.php that is included in register.php

Code: Select all
<!DOCTYPE html>
<!--[if IE 8 ]><html class="ie ie8" lang="en"> <![endif]-->
<!--[if (gte IE 9)|!(IE)]><!--><html lang="en"> <!--<![endif]-->
<head>

<!-- Basic Page Needs
================================================== -->
<meta charset="utf-8">
<title></title>

<!-- Mobile Specific Metas
================================================== -->
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">

<!-- CSS
================================================== -->
<link rel="stylesheet" href="/css/style.css">
<link rel="stylesheet" href="/css/colors/blue.css" id="colors">

<!-- FAVICON
================================================== -->
<link rel="apple-touch-icon" sizes="57x57" href="/images/favicon/apple-icon-57x57.png">
<link rel="apple-touch-icon" sizes="60x60" href="/images/favicon/apple-icon-60x60.png">
<link rel="apple-touch-icon" sizes="72x72" href="/images/favicon/apple-icon-72x72.png">
<link rel="apple-touch-icon" sizes="76x76" href="/images/favicon/apple-icon-76x76.png">
<link rel="apple-touch-icon" sizes="114x114" href="/images/favicon/apple-icon-114x114.png">
<link rel="apple-touch-icon" sizes="120x120" href="/images/favicon/apple-icon-120x120.png">
<link rel="apple-touch-icon" sizes="144x144" href="/images/favicon/apple-icon-144x144.png">
<link rel="apple-touch-icon" sizes="152x152" href="/images/favicon/apple-icon-152x152.png">
<link rel="apple-touch-icon" sizes="180x180" href="/images/favicon/apple-icon-180x180.png">
<link rel="icon" type="image/png" sizes="192x192"  href="/android-icon-192x192.png">
<link rel="icon" type="image/png" sizes="32x32" href="/images/favicon/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="96x96" href="/images/favicon/favicon-96x96.png">
<link rel="icon" type="image/png" sizes="16x16" href="/images/favicon/favicon-16x16.png">

<!--[if lt IE 9]>
   <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->

<!-- Java Script
================================================== -->
<script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.2.1.min.js"></script>
<script src="/scripts/jquery.flexslider.js"></script>
<script src="/scripts/jquery.selectnav.js"></script>
<script src="/scripts/jquery.twitter.js"></script>
<script src="/scripts/jquery.modernizr.js"></script>
<script src="/scripts/jquery.easing.1.3.js"></script>
<script src="/scripts/jquery.contact.js"></script>
<script src="/scripts/jquery.isotope.min.js"></script>
<script src="/scripts/jquery.jcarousel.js"></script>
<script src="/scripts/jquery.fancybox.min.js"></script>
<script src="/scripts/jquery.transit-modified.js"></script>
<script src="/scripts/layerslider.transitions.js"></script>
<script src="/scripts/layerslider.kreaturamedia.jquery.js"></script>
<script src="/scripts/greensock.js"></script>
<script src="/scripts/jquery.shop.js"></script>
<script src="/scripts/custom.js"></script>


</head>
<body>

<!-- Wrapper / Start -->
<div id="wrapper">

<!-- Header
================================================== -->
<div id="top-line"></div>
<div style="width:100%;background: #2f2f2f;">
<!-- 960 Container -->
<div class="container">

   <!-- Header -->
   <header id="header">

      <!-- Logo -->
      <div class="ten columns">
         <div id="logo">
            <h1><a href="/index.php"><img src="/images/logo.png" alt="" /></a></h1>
            <div class="clearfix"></div>
         </div>
      </div>

      <!-- Social / Contact -->
      <div class="six columns">
         

         <div class="clearfix"></div>

         <!-- Contact Details -->
         <div class="contact-details">Τηλ. 1 : </div><br>
         <div class="contact-details">Τηλ. 2 :</div>
         <div class="clearfix"></div>

      </div>
   </header>
   <!-- Header / End -->

   <div class="clearfix"></div>

</div>
</div>
<!-- 960 Container / End -->


<!-- Navigation
================================================== -->
<nav id="navigation" class="style-2">

<div class="left-corner"></div>
<div class="right-corner"></div>

<ul class="menu" id="responsive" style="max-width:942px; margin-left:auto;margin-right:auto;">

   <li><a href="/index.php" <?php if ($thisPage=="Αρχική") echo " id=\"current\""; ?>><i class="halflings white home"></i> ΑΡΧΙΚΗ </a></li>

   <li><a href="/corporation.php" <?php if ($thisPage=="Εταιρεία") echo " id=\"current\""; ?>><i class="halflings white briefcase"></i> ΕΤΑΙΡΕΙΑ </a></li>

   <li><a href="#" <?php if ($thisPage=="Πρατήρια") echo " id=\"current\""; ?>><i class="halflings white road"></i> ΠΡΑΤΗΡΙΑ </a>
      <ul>
      <cms:pages masterpage="stations.php" >
         <li><a href="<cms:show k_page_link />"><cms:show k_page_title /></a></li>
      </cms:pages>   
      </ul>
   </li>

   <li><a href="#" <?php if ($thisPage=="Προσφορές Εβδομάδας" || $thisPage=="Προσφορές Μήνα") echo " id=\"current\""; ?>><i class="halflings white tags"></i> ΠΡΟΣΦΟΡΕΣ </a>
      <ul>
         <li><a href="/weekly-deals.php">ΠΡΟΣΦΟΡΕΣ ΕΒΔΟΜΑΔΑΣ</a></li>
         <li><a href="/monthly-deals.php">ΠΡΟΣΦΟΡΕΣ ΜΗΝΑ</a></li>
      </ul>
   </li>


   <li><a href="/news.php" <?php if ($thisPage=="Νέα") echo " id=\"current\""; ?>><i class="halflings white pencil"></i> ΝΕΑ </a></li>

   <li><a href="/contact-us.php" <?php if ($thisPage=="Επικοινωνία") echo " id=\"current\""; ?>><i class="halflings white envelope"></i> ΕΠΙΚΟΙΝΩΝΙΑ </a></li>

   <li style="background: #ED1C24;"><a href="/members-card.php" <?php if ($thisPage=="Member's Card" || $thisPage=="Εγγραφή") echo " id=\"current2\""; ?>><i class="halflings white hdd"></i> MEMBER'S CARD </a></li>

   
</ul>
</nav>
<div class="clearfix"></div>


if it helps, these are the problematic fields
member_fthname
member_address
member_state
member_city
member_pc
member_dob
member_mob
member_cardnumber

The fields
member_lastname,
member_email,
member_password and
member_password_repeat, are all OK.
Hi EliasSek,

The problem in your code is that yo have defined all the additional regions as simple HTML inputs e.g.
Code: Select all
<input name="member_fthname" type="text" style="width: 100%;" required  />

We actually need to define them as Couch inputs e.g. as follows -
Code: Select all
<cms:input name="member_fthname" type="text" style="width: 100%;" required='1'  />

In case you did not notice, the second version is cms:input as opposed to simple input.

Following is the rectified code that works for me -
Code: Select all
<fieldset>
    <div class="eight columns">
    <label for="fname">ΟΝΟΜΑ:</label>
    <cms:input name='member_displayname' type='text' style="width:100%" /><br>
    </div>


    <div class="eight columns">
    <label for="sname" >ΕΠΩΝΥΜΟ:</label>
    <cms:input name='member_lastname' type='text' style="width:100%" /><br>
    </div>


    <div class="eight columns">
    <label for="fthname" >ΠΑΤΡΩΝΥΜΟ:</label>
    *<cms:input name="member_fthname" type="text" style="width: 100%;" required='1'  /><br>
    </div>


    <div class="four columns">
    <label for="address" >ΟΔΟΣ / ΑΡΙΘΜΟΣ:</label>
    *<cms:input name="member_address" type="text"  style="width: 90%;" required='1'  /><br>
    </div>

    <div class="four columns right">
    <label for="state" >ΠΕΡΙΟΧΗ:</label>
    *<cms:input name="member_state" type="text" style="width: 100%;"  /><br>
    </div>

    <div class="four columns">
    <label for="city" >ΠΟΛΗ:</label>
    *<cms:input name="member_city" type="text" style="width: 90%;" required='1'  /><br>
    </div>

    <div class="four columns right">
    <label for="pc" >ΤΚ:</label>
    *<cms:input name="member_pc" type="text" style="width: 100%;"  /><br>
    </div>

    <div class="eight columns">
    <label for="dob">ΗΜΕΡΟΜΗΝΙΑ ΓΕΝΝΗΣΗΣ:</label>
    *<cms:input name="member_dob" type="text"  style="width: 100%;" required='1' /><br>
    </div>


    <div class="eight columns"><br>
    <label for="mob" >ΚΙΝΗΤΟ:</label>
    *<cms:input name="member_mob" type="text" style="width: 100%;" required='1' /><br>
    </div>


    <div class="eight columns">
    <label for="email" >EMAIL:</label>
    <cms:input name='member_email' type='text' style="width: 100%;" /><br>
    </div>

    <div class="eight columns">
    <label for="cardnumber" >Νο ΚΑΡΤΑΣ:</label>
    *<cms:input name="member_cardnumber" type="text" style="width: 100%;" required='1'  /><br>
    </div>

    <div class="eight columns">
    <label for="pass" >ΚΩΔΙΚΟΣ:</label>
    <cms:input name='member_password' type='password' style="width: 100%;" /><br>
    </div>

    <div class="eight columns">
    <label for="repeatpass" >ΕΠΑΝΑΛΗΨΗ ΚΩΔΙΚΟΥ:</label>
     <cms:input name='member_password_repeat' type='password' style="width: 100%;" /><br>
    </div>

</fieldset> 

I had to make one more change to your code - the 'date' type is not natively available so I changed that to 'text'.
I suggest you please use the following addon by @tim that allows the use of HTML5 inputs as Couch inputs - viewtopic.php?f=8&t=9781

Hope it helps.
Thanks a lot KK!!! :D :D :D
That fixed the problem! I have one more question though.
Is it possible to login with a card id and password instead of the email and password?
9 posts Page 1 of 1
cron