change password code error.......

Posted by shimaTun on Stack Overflow See other posts from Stack Overflow or by shimaTun
Published on 2010-03-19T20:27:17Z Indexed on 2010/03/19 20:31 UTC
Read the original article Hit count: 406

I've created a code to change a password. Now it seem contain an error. When before I fill in the form to change password.the error is:

Warning: Cannot modify header information - headers already sent by (output started at C:\Program Files\xampp\htdocs\e-Complaint(FYP)\userChangePass.php:7) in C:\Program Files\xampp\htdocs\e-Complaint(FYP)\userChangePass.php on line 126

the code:

<?php # userChangePass.php
//this page allows logged in user to change their password.

$page_title='Change Your Password';

//if no first_name variable exists, redirect the user
if(!isset($_SESSION['userid'])){

    header("Location: http://" .$_SERVER['HTTP_HOST']. dirname($_SERVER['PHP_SELF'])."/index.php");
    ob_end_clean();
    exit();

}else{

    if(isset($_POST['submit'])) {//handle form.
        require_once('connectioncomplaint.php'); //connec to the database

        //check for a new password and match againts the confirmed password.
        if(eregi ("^[[:alnum:]]{4,20}$", stripslashes(trim($_POST['password1'])))){
            if($_POST['password1'] == $_POST['password2']){
                $p =escape_data($_POST['password1']);
            }else{
                $p=FALSE;
                echo'<p><font color="red" size="+1"> Your password did not match the confirmed password!</font></p>';
            }
        }else{
            $p=FALSE;
            echo'<p><font color="red" size="+1"> Please Enter a valid password!</font></p>';
        }

        if($p){ //if everything OK.

            //make the query
            $query="UPDATE access SET password=PASSWORD('$p') WHERE userid={$_SESSION['userid']}";
            $result=@mysql_query($query);//run the query.
            if(mysql_affected_rows() == 1) {//if it run ok.

                //send an email,if desired.
                echo '<p><b>your password has been changed.</b></p>';
                //include('templates/footer.inc');//include the HTML footer.
                exit();

            }else{//if it did not run ok

            $message= '<p>Your password could not be change due to a system error.We apolpgize for any inconvenience.</p><p>' .mysql_error() .'</p>';

            }
            mysql_close();//close the database connection.

            }else{//failed the validation test.
                echo '<p><font color="red" size="+1"> Please try again.</font></p>';
            }
        }//end of the main Submit conditional.

    }
    ?>

the error at this line:-

header("Location: http://" .$_SERVER['HTTP_HOST']. dirname($_SERVER['PHP_SELF'])."/index.php");

please help me guy...

© Stack Overflow or respective owner

Related posts about php

Related posts about passwords