参考错误:toastr 未定义

Hen*_*HBR 0 html php toast

我一直在尝试使用toastr.js在我的页面上显示 Toast 通知,但此错误一直显示:

错误

我已经包含了 jquery 以及 js 和 css,但无论如何都没有,这是代码:

编辑:当我尝试直接在 html 代码上显示 Toast 通知时,它工作正常,但是当我在 php 函数内部调用它们时,错误不断出现

<?php

// WHEN I TRY TO SHOW THE ALERT WITH THIS PHP FUNCTION, IT DOESN'T WORKS!

function cms_alert($message, $type) {
	switch ($type) {
		case "info":
			echo "<script>toastr.info('INFO!');</script>";
			break;
		case "success":
			echo "<script>toastr.success('SUCCESS!');</script>";
			break;
		case "warning":
			echo "<script>toastr.warning('WARNING!');</script>";
			break;
		case "error":
			echo "<script>toastr.error('ERROR!');</script>";
			break;
	}
}
?>

    <?php

    // THE ERROR IS HAPPENING HERE!

} else {
	// Senão, mostra a página de login
	if (isset($_POST['username'], $_POST['password'])) {
		$username = $_POST['username'];
		$password = ($_POST['password']);

		// Caso deixe todos os campos em branco, uma mensagem de erro é mostrada
		if (empty($username) or empty($password)) {
			cms_alert("Preencha todos os campos!", "error");
		} else {
			if ($username == $admin_username and $password == $admin_password) {
				// Usuário digitou login e senha corretos
				$_SESSION['logged_in'] = true;
				
				header('Location: index.php');
				exit();
			} else {
				// Usuário digitou login e senha incorretos
				cms_alert("Nome/senha esta incorreto!", "error");
			}
		}
	}

	?>
<html>
<head>
	<meta charset="utf-8">
	<title>tinyCMS - Login</title>
	<link rel="stylesheet" href="../assets/style.css">
	<link rel="stylesheet" href="../assets/w3.css">
	<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/toastr.js/latest/toastr.min.css">
	<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
	<script src="https://cdnjs.cloudflare.com/ajax/libs/toastr.js/latest/toastr.min.js"></script>
</head>
<body>

	<center>
		<h1><a href="/"><?php echo $site_name; ?></a></h1> <!-- Mostra o titulo do site -->
		<h5><?php echo $site_description; ?></h5> <!-- Mostra a descrição do site -->

		<hr/>

		<h4>Digite seu login e senha para continuar:</h4>

		<!-- LOGIN -->
		<form action="index.php" method="post" autocomplete="off">
			<input type="text" name="username" placeholder="Usuário" />
			<input type="password" name="password" placeholder="Senha" />
			<input type="submit" value="Login" />
		</form>
	</center>

	<hr/>

	<?php echo $site_footer_admin; ?>

</body>

<!-- WHEN I USE THE CODE DIRECTLY ON THE HTML FILE, IT WORKS FINE! -->

<script>toastr.error('Hello World!');</script>
</html>
Run Code Online (Sandbox Code Playgroud)

Law*_*one 5

  1. 链接中有空格会导致 404。
  2. 您将 javascript 放在样式表标签中,将 CSS 放在 javascript 标签中。
  3. 您必须包含 jQuery。

尝试这个:

<?php
function cms_alert($message, $type) {
    switch ($type) {
        case "info":
            echo "<script>toastr.info('INFO!');</script>";
            break;
        case "success":
            echo "<script>toastr.success('SUCCESS!');</script>";
            break;
        case "warning":
            echo "<script>toastr.warning('WARNING!');</script>";
            break;
        case "error":
            echo "<script>toastr.error('ERROR!');</script>";
            break;
    }
}
?>

<html>
<head>
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/toastr.js/latest/toastr.min.css">
  <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/toastr.js/latest/toastr.min.js"></script>

</head>
<body>
  <?php cms_alert("Hello World!", "success"); ?>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)