Javascript 显示警告消息,提示';在一个动作文件中,在另一个文件中

Javascript 显示警告消息,提示';在一个动作文件中,在另一个文件中,javascript,php,jquery,mysql,Javascript,Php,Jquery,Mysql,我有一个php操作文件: <?php session_start(); require 'config.php'; if (isset($_POST['action']) && $_POST['action'] == 'signup') { $stmt1 = "SELECT * FROM users where username='" . $_POST['username'] . "'"; $ret1 = mysqli_query($conn, $stmt

我有一个php操作文件:

<?php
session_start();
require 'config.php';
if (isset($_POST['action']) && $_POST['action'] == 'signup') {

    $stmt1 = "SELECT * FROM users where username='" . $_POST['username'] . "'";
    $ret1 = mysqli_query($conn, $stmt1);
    $rowcount1 = mysqli_fetch_assoc($ret1);
    if (empty($rowcount1)) {


        $query = "INSERT INTO users (username, password, email, cpf)VALUES( '" . $_POST['username'] . "', '" . $_POST['password'] . "', '" . $_POST['email'] . "', '" . $_POST['cpf'] . "')";
        //echo $query;exit;
        echo  mysqli_query($conn, $query);
    } else {
        header("Location:signup.php");
        echo '<script language="javascript">';
        echo 'alert("User is already registered.")';
        echo '</script>';
    }
}
标题('Location:')将重定向用户的浏览器。网页上不会显示任何其他内容,因为浏览器正在重新刷新。您需要将标签添加到signup.php页面

<?php
session_start();
require 'config.php';
if (isset($_POST['action']) && $_POST['action'] == 'signup') {

    $stmt1 = "SELECT * FROM users where username='" . $_POST['username'] . "'";
    $ret1 = mysqli_query($conn, $stmt1);
    $rowcount1 = mysqli_fetch_assoc($ret1);
    if (empty($rowcount1)) {


        $query = "INSERT INTO users (username, password, email, cpf)VALUES( '" . $_POST['username'] . "', '" . $_POST['password'] . "', '" . $_POST['email'] . "', '" . $_POST['cpf'] . "')";
        //echo $query;exit;
        echo  mysqli_query($conn, $query);
    } else {
    // THE BROWSER IS HAS BEEN REDIRECTED TO signup.php
        header("Location:signup.php");

    // THIS ISN'T DISPLAY IN THE BROWSER BECAUSE THE BROWSER IS BEING REDIRECTED
        echo '<script language="javascript">';
        echo 'alert("User is already registered.")';
        echo '</script>';
    }
}

signup.php
中包含警报代码。对不起,正确的方法是什么?编辑
signup.php
页面并在该文件中包含
警报(“用户已注册”)
。当你将用户重定向到另一个页面后,你不能在你的“action”PHP文件中回显JS代码(并执行它)。为什么要重复下一票?位置标题将重定向浏览器。这是一个浏览器重定向<代码>位置响应标头指示页面重定向到的URL如果要在浏览器重定向后显示某些内容,则该内容必须位于新网页上。此问题已经有了答案。请避免回答已经回答和/或应该结束的问题。相反,你可以链接到重复的问题,或者在评论中解释为什么该问题应该关闭。当你有足够的声誉时,你就可以在一个问题应该结束的时候投下一票。对不起,我不知道它已经在别处得到了回答。我会先搜索再回答。(在有人注意到其他地方有人回答之前,我已经回答了10分钟)。我提供的指示比你的评论更清楚。我会把它放在评论中(我最初是这样做的——但是,我想op不会从他们的回答中理解)。你为什么没有将其作为已回答的问题关闭?我已经将其作为离题进行了关闭投票,因为它缺少能够提供好答案的信息,这就是为什么我随后使用评论部分提到重复的问题(不能对同一问题投多个关闭投票)。我承认在这种情况下,重复投票可能更准确。
<?php
session_start();
require 'config.php';
if (isset($_POST['action']) && $_POST['action'] == 'signup') {

    $stmt1 = "SELECT * FROM users where username='" . $_POST['username'] . "'";
    $ret1 = mysqli_query($conn, $stmt1);
    $rowcount1 = mysqli_fetch_assoc($ret1);
    if (empty($rowcount1)) {


        $query = "INSERT INTO users (username, password, email, cpf)VALUES( '" . $_POST['username'] . "', '" . $_POST['password'] . "', '" . $_POST['email'] . "', '" . $_POST['cpf'] . "')";
        //echo $query;exit;
        echo  mysqli_query($conn, $query);
    } else {
    // THE BROWSER IS HAS BEEN REDIRECTED TO signup.php
        header("Location:signup.php");

    // THIS ISN'T DISPLAY IN THE BROWSER BECAUSE THE BROWSER IS BEING REDIRECTED
        echo '<script language="javascript">';
        echo 'alert("User is already registered.")';
        echo '</script>';
    }
}