2015-02-07 105 views
-3

我正在为站点编写日志脚本,除了验证mysqli查询之外,我有大部分工作正在工作,其他语句未被访问,我无法弄清楚如何解决它,下面的代码是具有html,然后是所调用的PHP脚本的索引页面,所有的php验证工作除了验证所有输入字段匹配数据库字段的脚本位,我可以得到验证方的if语句工作,它将我发送到相关页面,问题是如果if语句的第一部分中的验证显示无效,那么它不会传递给else语句,我得到的只是一个空白页面,它与进行验证的php页面相同,而不是我需要的页面。非常感激任何的帮助。else语句否在php中访问如果语句

HTML代码***********

<!doctype html> 
<html> 
<head> 
<meta charset="utf-8"> 
<title>Dot Mov Home</title> 
<meta name="viewport" content="width=device-width, initial-scale=1"> 
<link href="/styles/home.css" rel="stylesheet" type="text/css"> 
<!--The following script tag downloads a font from the Adobe Edge Web Fonts server for use within the web page. We recommend that you do not modify it.--> 
<script>var __adobewebfontsappname__="dreamweaver"</script> 
<script src="http://use.edgefonts.net/lemon:n4:default.js" type="text/javascript"></script> 
<script src="/js/civem.js"></script> 
<script type='text/javascript' src='http://code.jquery.com/jquery.min.js'></script> 
<script src="http://code.jquery.com/jquery-1.7.min.js"></script> 
<script src="/js/pswrd_strength.js"></script> 
<script src="/js/email_dbvalidate.js"></script> 
<script src="/js/username_dbvalidate.js"></script> 
<script src="/js/confirm_password__dbvalidate.js"></script> 
<script type="text/javascript"> 

function SwapDivsWithClick(div1,div2) 
{ 
    d1 = document.getElementById(div1); 
    d2 = document.getElementById(div2); 
    if(d2.style.display == "none") 
    { 
     d1.style.display = "none"; 
     d2.style.display = "block"; 
    } 
    else 
    { 
     d1.style.display = "block"; 
     d2.style.display = "none"; 
    } 
} 
</script> 
</head> 

<body> 
<div id="video_container"> 
    <video muted autoplay loop > 
    <source src="/video/South Dakota Badlands Scenic Byway 720p (Video Only)_1.3gp" type="video/3gp"> 
    <source src="/video/South Dakota Badlands Scenic Byway 720p (Video Only).webm" type="video/webm"> 
    <source src="/video/South Dakota Badlands Scenic Byway 720p.ogg" type="video/ogg"> 
    Your browser does not support the video tag. I suggest you upgrade your browser. </video> 
</div> 

<header> 

    <div class="upload"><a href="upload.html" title="Upload" target="_self">UPLOAD</a></div> 
     <div class="view"><a href="view.php" title="View" target="_self">VIEW</a></div> 
      <div class="spacer1"></div> 

       <div class="search_bar"> 
        <form action="/search_results.php" method="post" name="search_database" autocomplete="on"> 
        <input type="text" class="search" placeholder="Search"> 
        </form> 


    </div> 
       <div class="logo_text">.MOV </div> 
       <div class="tagline">Motorcycle Online Video</div> 
</a></header> 
<main> 

    <div id="login" style="display:block"> 




      <form method="post" action="includes/login.inc.php" id="loginform"> 


       <input name="email" type="email" id="email" form="loginform" placeholder="Please Enter Your Email"> 


       <input name="password" type="password" id="password" form="loginform" placeholder="Please Enter Your Password" title="Please Enter Your Password"> 


<div class="submit_buttons"> 
      <input type="submit" class="login_btn" form="loginform" formaction="includes/login.inc.php" title="Login" value="Login"> 

<a href="javascript:SwapDivsWithClick('login','join')"><div class="join_but">Or Join</div></a> 
     </div> 
     <div id="forgotten_password">Forgotten Password</div> 
     <div class="login_statements"> 
         <div class="statement1"> 
         <div class="by_joining">By Joining</div> 
         <div class="dot_mov">.MOV</div> 
         <div class="agree">You agree to our</div> 
         </div> 
         <div class="statement2"> 
         <div class="terms_link"><a href="terms.html" title="Terms of Service" target="_self">Terms of Service</a></div> 
         <div class="and">and</div> 
         <div class="service_link"><a href="privacy.html" title="Privacy Policy" target="_self">Privacy Policy</a></div> 
         </div> 

       </div> 
        <div class="facebook_login"> 
         <div class="facebook_icon"><img src="images/fb.png" class="fb_icon"></div> 
         <div class="fb_link">Login with FaceBook </div> 
       </div> 
    </form> 
    </div>     


    </div> 


    <div id="join" style="display: none;"> 




    <form action="includes/register.inc.php" method="post" id="joinform"> 

       <input name="name2" type="text" id="name2" form="joinform" placeholder="Please Enter Your Username" title="Please Enter Your Username"> 
       <div id="user-name"> 
     <h4>Username must meet the following requirements!<br>If you have forgotten your Password, click on "Forgotten Password"!</h4> 

       <div id="name_result"></div> 
       <div id="name_length" class="invalid">At least <strong>6 letters</strong></div> 


       </div> 


       <input name="email2" type="email" id="email2" form="joinform" placeholder="Please Enter Your Email" title="Please Enter a Valid Email"> 
       <div id="user-email"> 
     <h4>Email must be a valid Email format!<br>If the Email exists, Either Login using the Username the Email was setup with or check your Email is correct!</h4> 
       <div id="email_result"> 
       <div id="email_validate" class="invalid">Email Valid</div> 
       <div id="emaildb_validate"></div> 
</div> 

     </div> 


     <input name="password2" type="password" id="password2" form="joinform" placeholder="Please Enter Your Password" title="Please Enter Your Password"> 
<div id="pswd_info"> 
    <h4>Password must meet the following requirements!<br>If the Password doesnt meet the requirements you will be required to fill in the form again!</h4> 
    <ul id="pswd_list"> 
     <li id="letter" class="invalid">At least <strong>one letter</strong></li> 
     <li id="capital" class="invalid">At least <strong>one capital letter</strong></li> 
     <li id="number" class="invalid">At least <strong>one number</strong></li> 
     <li id="length" class="invalid">Be at least <strong>8 characters</strong></li> 
    </ul> 
</div> 

       <input name="confirm_password2" type="password" id="confirm_password2" form="joinform" placeholder="Please Confirm Your Password" title="Please Confirm Your Password"> 
      <div id="user-confirm_password"> 
     <h4>Please Confirm Password<br>If the Passwords do not match, you wil be required to fill in the form again!</h4>  

     <div id="error" class="error"></div> 
      <div id="confirm_match" class="invalid">Passwords Match</div> 




     </div> 

     <div class="submit_buttons2"> 
        <input name="join_btn2" type="submit" id="join_btn2" form="joinform" formaction="includes/register.inc.php" " formmethod="POST" title="Join" value="Join"> 

<a href="javascript:SwapDivsWithClick('login','join')"><div class="join_btn2">Or Login</div></a> 
</div> 


           <div class="login_statements2"> 
         <div class="statement1"> 
         <div class="by_joining">By Joining</div> 
         <div class="dot_mov">.MOV</div> 
         <div class="agree">You agree to our</div> 
         </div> 
         <div class="statement2"> 
         <div class="terms_link"><a href="terms.html" title="Terms of Service" target="_self">Terms of Service</a></div> 
         <div class="and">and</div> 
         <div class="service_link"><a href="privacy.html" title="Privacy Policy" target="_self">Privacy Policy</a></div> 
         </div> 
         </div> 
         <div class="facebook_login2"> 
         <div class="facebook_icon"><img src="images/fb.png" class="fb_icon"></div> 
         <div class="fb_link">Login with FaceBook </div> 
         </div> 
     </form> 
    </div>     




       </div> 

    </div> 
    <div class="scroll_container"> 
    <a data-scroll href="#body2"><div class="scroll_link"> 
     <div class="arrow"><img src="/images/arrow.png" alt="" class="arrow_icon"/></div> 

     <div class="arrow3"><img src="/images/arrow.png" alt="" class="arrow_icon"/></div> 
    Scroll Down</div></a> 
    </div> 







</main> 

<div class="body2" id="body2"> 

    <div class="vid_grid"> 

    <div class="top_section"> 
     <div class="top_left_quarter"></div> 
     <div class="top_right_quarter"> 
      <div class="top_right_left_quarter"></div> 
      <div class="top_right_right_quarter"></div> 
      <div class="top_right_bottom_left"></div> 
      <div class="top_right_bottom_right"></div> 
     </div> 
    </div> 

    <div class="bottom_section"> 
     <div class="bottpm_left_top"></div> 
     <div class="bottpm_left_bottom"></div> 
     <div class="bottom_middle"></div>  
     <div class="bottom_left_quarter"></div> 
     <div class="bottom_right_quarter"></div> 
     <div class="bottom_right_top"></div> 
     <div class="bottom_right_bottom"></div> 
    </div> 
    <a href="/staff_picks.php"><div class="staff_picks">Staff Picks </div></a> 


    </div> 

</div> 
<footer class="footer"> 
    <div id="breadcrumbs"><a href="/terms.html" title="Terms" target="_self">Terms</a> &vert; <a href="/privacy.html" title="Privacy" target="_self">Privacy</a> &vert; <a href="/about.html" title="About Us" target="_self">About Us</a> &vert; <a href="/copyright.html" title="Copyright" target="_self">Copyright</a> &vert; <a href="/cookies.html" title="Cookies" target="_self">Cookies</a> &vert; &reg &copy 2015</div><img src="/images/.mov.png" alt="" width="42" height="14" class="logo"/> 
    <div class="social_media"><img src="/images/fb.png" alt="" width="30" height="30" class="fbicon"/><img src="/images/twitter.png" alt="" width="32" height="32" class="twittericon"/><img src="/images/googleplus.png" alt="" width="32" height="32" class="googleplusicon"/></div> 



</footer> 
<script src="/js/smooth-scroll.js"></script> 
<script src="/js/smooth-scroll.min.js"></script> 
<script type="text/javascript"> 
     smoothScroll.init({ 
      speed: 1000, 
      easing: 'easeInOutCubic', 
      offset: 0, 
      updateURL: true, 
      callbackBefore: function (toggle, anchor) {}, 
      callbackAfter: function (toggle, anchor) {} 
     }); 
    </script> 
</body> 

</html> 

PHP ***************

<?php 
include_once 'db_connect.php'; 
include_once 'functions.php'; 

sec_session_start(); 

$emailErr = $passwordErr = $password_matchErr = $email_exsistErr = ''; 
$email = $name = $password = $confirm_password = ''; 



if (isset($_POST['name2'], $_POST['email2'], $_POST['paswword2'], $_POST['confirm_password2'])) { 
    $error_msg .= "please fill in the form"; 
    } else { 

    // Sanitize the data passed in 'name' 
    $name = filter_input(INPUT_POST, 'name2', FILTER_SANITIZE_STRING); 

    // Sanitize the data passed in 'email' 
    $email = filter_input(INPUT_POST, 'email2', FILTER_SANITIZE_EMAIL); 

    // validate the data passed in 'email' 
    $email = filter_var($email, FILTER_VALIDATE_EMAIL); 

    // check if email is valid 
    if (!filter_var($email, FILTER_VALIDATE_EMAIL)) { 

     // Not a valid email 
     $emailErr = "The email address you entered is not valid"; 
    } 

    //Sanitize the data passed in 'password' 
    $password = filter_input(INPUT_POST, 'password2', FILTER_SANITIZE_STRING); 


    //validate the data passed in 'password' 
    if (preg_match("/^.*(?=.{8,})(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).*$/", $password)) { 
} else { 
     $passwordErr = "Password is invalid!<br>Please ensure your password is formatted as described when filling in the form!"; 
}   


    //Sanitize the data passed in 'confirm_password' 
    $confirm_password = filter_input(INPUT_POST, 'confirm_password2', FILTER_SANITIZE_STRING); 


    //check that password and confirm password match 
if ($password != $confirm_password) { 

     // error matching passwords 
$confirm_passwordErr = "Your passwords do not match.<br>Please type carefully."; 
    } 






$results = $mysqli->query("SELECT * FROM signed_up WHERE email = `'$email'");` 



while($row = $results->fetch_assoc()) { 


    if ($row["name"] == $name && $row["email"] == $email && $row["password"] == $password) { 
$regErr = 'User Already Exsists!<br>Please Login'; 
$_SESSION['regErr'] = $regErr; 
header('location: ../login.php'); 

} else { 

//if ($emailErr == '' && $passwordErr == '' && $password_matchErr == '' && $email_exsistErr =='') { 
echo '15'; 
     $_SESSION['emailErr'] = $emailErr; 
     $_SESSION['passwordErr'] = $passwordErr; 
     $_SESSION['confirm_passwordErr'] = $confirm_passwordErr; 
     $_SESSION['email_exsistErr'] = $email_exsistErr; 
header('Location: ../join.php'); 
exit(); 
    } 
     } 
    } 
//} 
?> 

这是代码段出现问题***********

$results = $mysqli->query("SELECT * FROM signed_up WHERE email = '$email'");  

    while($row = $results->fetch_assoc()) { 


     if ($row["name"] == $name && $row["email"] == $email && $row["password"] == $password) { 
    $regErr = 'User Already Exsists!<br>Please Login'; 
    $_SESSION['regErr'] = $regErr; 
    header('location: ../login.php'); 

    } else { 

    //if ($emailErr == '' && $passwordErr == '' && $password_matchErr == '' && $email_exsistErr =='') { 
    echo '15'; 
      $_SESSION['emailErr'] = $emailErr; 
      $_SESSION['passwordErr'] = $passwordErr; 
      $_SESSION['confirm_passwordErr'] = $confirm_passwordErr; 
      $_SESSION['email_exsistErr'] = $email_exsistErr; 
    header('Location: ../join.php'); 
    exit(); 
     } 
      } 
     } 
    //} 
    ?> 

编辑后的代码现在正常******************** ***

$results = $mysqli->query("SELECT * FROM signed_up WHERE email = '$email'");  

while($row = $results->fetch_assoc()) { 


    if ($row["name"] == $name && $row["email"] == $email && $row["password"] == $password) { 

$regErr = 'User Already Exsists!<br>Please Login'; 
$_SESSION['regErr'] = $regErr; 
header('location: ../login.php'); 

}else{ 

     $_SESSION['emailErr'] = $emailErr; 
     $_SESSION['passwordErr'] = $passwordErr; 
     $_SESSION['confirm_passwordErr'] = $confirm_passwordErr; 
     $_SESSION['email_exsistErr'] = $email_exsistErr; 
header('Location: ../join.php'); 
exit(); 

} 

} 
     } 
+0

为什么你比较密码检查用户是否存在? – 2015-02-07 14:06:45

+0

我只是验证数据库字段的每一个输入,我知道它不necassary,我可能会删除之前,生活 – Tiny 2015-02-07 14:21:27

+0

任何异常?或者你的回声“15”出现了吗? – 2015-02-07 14:28:00

回答

0

直接把你的验证到SQL

$results = $mysqli->query("SELECT count(*) FROM signed_up WHERE email = '$email' AND name = '$name'"); 
if ($result->fetchColumn()){ 
    echo "User already exists"; 
}else{ 
    echo "New user"; 
} 
+0

谢谢你的回答 – Tiny 2015-02-07 15:35:35