Page 472 - Beginning PHP 5.3
P. 472

Part III: Using PHP in Practice
                         < /table >

                         < div style=”width: 30em; margin-top: 20px; text-align: center;” >

                           < a href=”view_members.php?start= < ?php echo $start ? > & amp;order= < ?php
                    echo $order ? > ” > Back < /a >
                         < /div >

                      < ?php
                      displayPageFooter();
                    }

                    function saveMember() {
                      $requiredFields = array( “username”, “emailAddress”, “firstName”,
                    “lastName”, “joinDate”, “gender” );
                      $missingFields = array();
                      $errorMessages = array();

                      $member = new Member( array(
                        “id” = >  isset( $_POST[“memberId”] ) ? (int) $_POST[“memberId”] : “”,
                        “username” = >  isset( $_POST[“username”] ) ? preg_replace( “/[^ \-\_a-zA-
                    Z0-9]/”, “”, $_POST[“username”] ) : “”,
                        “password” = >  isset( $_POST[“password”] ) ? preg_replace( “/[^ \-\_a-zA-
                    Z0-9]/”, “”, $_POST[“password”] ) : “”,
                        “emailAddress” = >  isset( $_POST[“emailAddress”] ) ? preg_replace( “/[^
                    \@\.\-\_a-zA-Z0-9]/”, “”, $_POST[“emailAddress”] ) : “”,
                        “firstName” = >  isset( $_POST[“firstName”] ) ? preg_replace( “/[^ \’\-a-
                    zA-Z0-9]/”, “”, $_POST[“firstName”] ) : “”,
                        “lastName” = >  isset( $_POST[“lastName”] ) ? preg_replace( “/[^ \’\-a-zA-
                    Z0-9]/”, “”, $_POST[“lastName”] ) : “”,
                        “joinDate” = >  isset( $_POST[“joinDate”] ) ? preg_replace( “/[^\-0-9]/
                    ”, “”, $_POST[“joinDate”] ) : “”,
                        “gender” = >  isset( $_POST[“gender”] ) ? preg_replace( “/[^mf]/”, “”,
                    $_POST[“gender”] ) : “”,
                        “favoriteGenre” = >  isset( $_POST[“favoriteGenre”] ) ? preg_replace(
                    “/[^a-zA-Z]/”, “”, $_POST[“favoriteGenre”] ) : “”,
                        “otherInterests” = >  isset( $_POST[“otherInterests”] ) ? preg_replace(
                    “/[^ \’\,\.\-a-zA-Z0-9]/”, “”, $_POST[“otherInterests”] ) : “”
                      ) );

                      foreach ( $requiredFields as $requiredField ) {
                        if ( !$member- > getValue( $requiredField ) ) {
                          $missingFields[] = $requiredField;
                        }
                      }

                      if ( $missingFields ) {
                        $errorMessages[] = ‘ < p class=”error” > There were some missing fields in
                    the form you submitted. Please complete the fields highlighted below and
                    click Save Changes to resend the form. < /p > ’;
                      }

                      if ( $existingMember = Member::getByUsername( $member- > getValue( “username”
                    ) ) and $existingMember- > getValue( “id” ) != $member- > getValue( “id” ) ) {




              434





                                                                                                      9/21/09   9:14:14 AM
          c14.indd   434                                                                              9/21/09   9:14:14 AM
          c14.indd   434
   467   468   469   470   471   472   473   474   475   476   477