On Tue, Dec 15, 2009 at 1:25 PM, Vinay Kannan <viny...@gmail.com> wrote:
> Yep, that would work, but then if the user is not a member, then the link to
> the membership should be printed on the form that has the validation and not
> the one that has the form?
>
> On Tue, Dec 15, 2009 at 10:21 AM, Christoph Rosse <c...@okto.tv> wrote:
>>
>> you could also validate the form in a seperate php file with no output and
>> then redirect to the "error" and the "another page" ?
>>
>>
>> Bastien Koert schrieb:
>>>
>>> On Tue, Dec 15, 2009 at 12:48 PM, Vinay Kannan <viny...@gmail.com> wrote:
>>>
>>>>
>>>> Hi,
>>>>
>>>> I have 2 pages on php, the first page has a small form to accept a
>>>> membership number from the user, which checks for membership number in
>>>> the
>>>> DB, if the membership no does not exist, gives an error saying 'you are
>>>> not
>>>> a member click here to become a member now', this bit works fine.
>>>>
>>>> The problem is the following bit 'if the user is a member, i want the
>>>> user
>>>> to be directed to another page.
>>>>
>>>> this is what i did to get the result since header("Location:....") wont
>>>> work, as already the form has been printed on the page.
>>>>
>>>> echo'<META HTTP-EQUIV="refresh" content="0;URL=member.php">'; but the
>>>> problem is that this takes couple of seconds, till then the page is very
>>>> much visible which doesnt look good.
>>>>
>>>> Any help on this is much appreciated.
>>>>
>>>> Thanks,
>>>> Vinay.
>>>>
>>>>
>>>
>>> What about holding the form in the buffer, and then dealing with the
>>> buffer before sending the form?
>>>
>>>
>>>
>>
>>
>> --
>> PHP Database Mailing List (http://www.php.net/)
>> To unsubscribe, visit: http://www.php.net/unsub.php
>>
>
>

When you look at it like that all together, I find its easier to
functionalize the whole process

<?php

include("header.php");
include("lib/funcs.php");


if(isset($_POST['submit'])){
  processForm();
}else{
  showForm();
}

function processForm(){

                $url=$_SERVER['REQUEST_URI'];
                $member_no=$_POST['member_no'];
                $member_no=trim(htmlspecialchars($member_no));
                $not_member=1;
                if(isset($_POST['submit']) && $_POST['trigger']==6)
                {
                //  echo $member_no;
                  $conn     = mysql_connect($host,$user,$pass) or die("Could not
open the connection");
                  $dbselect = mysql_select_db($dbname,$conn) or die("could not
connect to the DB");
                  $id_query = "SELECT * FROM members WHERE 
member_id='$member_no'";
                  $result   = mysql_query($id_query) or trigger_error("SQL", 
E_USER_ERROR);
                  $num_rows = mysql_num_rows($result);
                  //echo $num_rows;
                  if($num_rows>0)               
                  {
                    echo'<META HTTP-EQUIV="refresh" 
content="0;URL=member.php">';
                
                  }             
                  else
                  {             
        
                                                if($not_member==0)
                                                {
                                                  echo 'Our records indicate 
that you are not a member yet, <a
href="member.php"> Click here</a> to become a member now';
                                                }
                                                
                  }

}//end function processForm

function showForm(){
?>
                <td width="420" class="whitebg">
                <BR />
                <h3 align="left">REFERENCE FOR MEMBERSHIP TO INFINITY LEARNERS 
CLUB</h3>
                <p>
                In order to be able to refer members to Infinity LMRC, you need 
to
be a registered member with us, Please enter your membership number
below and start referring.</p>
                <table width="410">
                <form action="<?php echo $url ; ?>" method="post" name="refer" >
                <table>
                <tr>
                <td><label for="memberno">Membership Number</label></td>
                <td><input type="text" name="member_no" class="myinput" 
/></td></tr>
                <tr><td>&nbsp;</td></tr>
                <tr><td><input type="submit" name="submit" value=" OK !" /></td>
                <td><input type="reset" name="cancel" value=" Cancel " 
/></td></tr>
                <tr><td><input type="hidden" name="trigger" value="6" 
/></td></tr>
                </td>
                                                <?php include("footer.php");?>
                </table>
                </form>
                </body>
                </html>


<?php
}//end showForm function
?>


This gives way more control over the whole flow

-- 

Bastien

Cat, the other other white meat

-- 
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to