404错误localhost xampp

时间:2018-01-18 19:50:11

标签: php http-status-code-404

你好! 我正在一个网站上工作,但此刻我被卡住了! 当我按下提交按钮时,我将被重定向到

  

找不到对象!   在此服务器上找不到请求的URL。引用页面上的链接似乎是错误的或过时的。请告知该页面的作者有关错误的信息。

     

如果您认为这是服务器错误,请与网站管理员联系。

     

错误404   本地主机   Apache / 2.4.29(Win32)OpenSSL / 1.1.0g PHP / 7.2.0

我试图更改我的XAMPP端口,但它也不起作用。我也用谷歌搜索了它,但没有结果。

我认为它与我的标头变量有关。

但我是一个初学者,所以看不到错误。

我该怎么办?

我的代码 - >

//Database connect
    $host = "localhost"; //Database host --------------------
    $user = "root"; //User in the database --------------------
    $password = ""; //The password to the database --------------------
    $database = "hjaelpsom"; //The specific database --------------------

//Database connect validation --------------------
    $connect = mysqli_connect($host, $user, $password, $database);

    if(!$connect){
        echo "Kunne ikke tilslutte til vores database! Prøv igen senere!";
        header("Location: ../HTML-opret-ung.php");
    } else {

    //Inserting the input to variables
        $name = $_POST["name"];    
        $mail = $_POST["email"];   
        $mailConfirm = $_POST["emailConfirm"];    
        $age = $_POST["age"];
        $password = $_POST["password"];    
        $passwordConfirm = $_POST["passwordConfirm"];  
        $agree = $_POST["agree"];
        $submit = $_POST["submit"];

        //Validation of the user input --------------------
          //If the submit button is clicked --------------------
            if(isset($_POST['submit'])){

              //Check if all fields are filled --------------------
                if(empty($name) || empty($mail) || empty($mailConfirm) || empty($age) || empty($password) || empty($passwordConfirm) || empty($agree)){

                  echo "Du skal udfylde ALLE felterne!";
                  header("Location: HTML-opret-ung.php");
                  exit;

                } else {

                  //Name --------------------
                    if(!preg_match("/^[a-åA-Å ]*$/", $name)){
                      echo "Du skal indtaste et navn ikke $name";
                      header("Location: HTML-opret-ung.php");
                      exit;
                    } else {

                      //Mails --------------------
                        if(!filter_var($mail, FILTER_VALIDATE_EMAIL) || !filter_var($mailConfirm, FILTER_VALIDATE_EMAIL)){
                          echo "Du har indtastet en ugyldig email!";
                          header("Location: HTML-opret-ung.php");
                          exit;
                        } else {

                          $mailCheck = "SELECT * FROM unge WHERE email='$mail'";
                          $mailResult = mysqli_query($connect, $mailCheck);
                          $mailResultCheck = mysqli_num_rows($mailCheckResult);

                          if($mailResultCheck > 0){
                            echo "Din email var allerede i brug!";
                            exit;
                          } else {
                            if($mail === $mailConfirm){
                              echo "Dine emails var ikke ens!";
                              header("Location: HTML-opret-ung.php");
                              exit;
                            } else {

                              //Age --------------------
                                if($age < 12 || $age > 17){
                                  echo "Du er enten for ung eller for gammel!";
                                } else {

                                  //Passwords -------------------- 1:04:32
                                    if(preg_match("/^[a-zA-Z0-9]*$/")){
                                      if($password === $passwordConfirm){
                                        $passwordHash = password_hash($password, PASSWORD_DEFAULT);

                                        //Insert into DB --------------------
                                          $insertSQL = "INSERT INTO unge (Name, Email, Age, Password) VALUES ('$name', '$mail', '$age', '$passwordHash')";
                                          mysqli_query($connect, $insertSQL);
                                      } else {
                                        echo "Dine kodeord skal være ens!";
                                      }
                                    } else {


                           echo "Dit kodeord skal mindst indeholde: et stort bogstav, et småt bogstav og et tal";
                                  exit();
                                }
                            }
                        }
                      }
                    }
                }
            }
    } else {
      header("Location: ../HTML-opret-ung.php");
      exit();
    }

}

1 个答案:

答案 0 :(得分:0)

404错误显示文件丢失或您重定向到错误的目录。 $ _POST [&#34;提交&#34;]返回什么? 还尝试完全删除标题,看看它是否仍然返回一些东西。 删除标题后尝试使用var_dump()或echo。

我自己一直在使用xampp,当我提供错误的输入时,主要是404与错误的文件路径有关。

../表示当前目录上方的目录。