Necesito crear un mensaje aleatorio cuando hay una coincidencia exitosa en mi código PHP, pero no estoy seguro de cómo lograrlo con JavaScript. En mi código, PHP extrae el nombre de usuario y la contraseña de un archivo y luego verifica si el nombre de usuario y la contraseña ingresados por el usuario coinciden. Si es así, obtienen acceso y el formulario desaparece para mostrar un mensaje (que estoy tratando de averiguar cómo hacerlo). De lo contrario, se deniega el acceso y el formulario permanece para que lo intenten de nuevo.
Intenté cambiar el código a onload , onclick y addEventListener , pero no se muestra nada. También intenté cambiar la etiqueta HTML a element y p . ¿No es esto posible de hacer? No pensé que el onclick sería bueno ya que se hace clic en el botón Enviar de cualquier manera, pero lo intenté para ver si podía hacer que funcionara de todos modos.
PHP
//NO ERRORS AVAILABLE AND THE BUTTON HAS BEEN PUSHED if (!$error && isset($_POST['submit'])) { echo '<div class = "output"> <h1 class = "success">'.$msg.'</h1> <p id="welcomeDisplay" onload="newWelcome()"></p> <p id="welcomemsg"></p> </div>'; }JavaScript
var welcome = [ "Success feels so good!", "You made it!", "You are worthy!", "Open Sesame", "Welcome to the dark side!", "Hola!", "So glad you are back!", "Hello, sunshine!", "Howdy, partner", "what's kickin', little chicken?", "Peek-a-boo!", "Ahoy, matey!", "Aloha!", "Bonjour!", "Hallo!", "Ciao!", "Konnichiwa!" ]; /*-----------------------------------------------------------------*/ function newWelcome() { var randomNumber = Math.floor(Math.random() * (welcome.length)); document.getElementById('welcomemsg').innerHTML = welcome[randomNumber]; }Si la secuencia de comandos php está en el nivel raíz, puede intentar agregar algo como esto a su archivo scripts.js , pero es posible que deba modificarlo para que no tenga en cuenta el nombre de la secuencia de comandos en la URL o una ruta si está en una subcarpeta.
document.addEventListener('DOMContentLoaded',()=>{ let arr=location.href.split('/'); let page=arr.pop(); let path=arr.pop(); /* You might need to use the path variable too! */ if( page=='index.php' ){ const welcome=[ "Success feels so good!", "You made it!", "You are worthy!", "Open Sesame", "Welcome to the dark side!", "Hola!", "So glad you are back!", "Hello, sunshine!", "Howdy, partner", "what's kickin', little chicken?", "Peek-a-boo!", "Ahoy, matey!", "Aloha!", "Bonjour!", "Hallo!", "Ciao!", "Konnichiwa!" ]; let msg=welcome[Math.floor(Math.random() * (welcome.length))]; document.getElementById('welcomemsg').innerHTML=msg } })