Soy nuevo en el desarrollo web. Recientemente creé un "chatbot" básico para que lo use un amigo, pero tengo problemas para implementar un método para guardar lo que ingresan como entrada. Me gustaría ver lo que ingresan en el chatbot, pero no puedo porque JavaScript está en el lado del cliente, mientras que necesito pasar los valores a través de algún servidor (supongo) para poder ver qué tipo de entradas ingresan en el chatbot.
He buscado varias soluciones, pero no he tenido suerte al probarlas. Por ejemplo, aunque nunca antes había trabajado con ninguno de estos, recientemente intenté usar el siguiente php:
$to = "some-email@gmail.com"; $subject = "New Chatbot Query"; $message = file_get_contents("php://input"); mail($to, $subject, $message);y AJAX:
function sendPHP(input, output){ const jsonString = JSON.stringify(input, output); const xhr = new XMLHttpRequest(); console.log(jsonString); xhr.open("POST", "receive.php"); xhr.setRequestHeader("Content-Type", "application/json"); xhr.send(jsonString); }para intentar obtener un correo electrónico de cada envío de entrada. Al realizar la prueba en LiveServer, se muestra el siguiente error en la consola: "Error al cargar el recurso: el servidor respondió con un estado de 405 (Método no permitido)"
Me gustaría lograr un método simple para poder leer la entrada que pusieron en el sitio, sin embargo, actualmente tengo muchos problemas para entender los servidores/la base de datos o cómo funciona esto. Intenté buscar tutoriales sobre AJAX, php y más, pero siento que debería haber una manera simple que simplemente no conozco.
Cabe señalar que, en HTML, el campo de entrada NO se encuentra debajo de un formulario. Lo que puede haber resultado útil ya que mi sitio está actualmente alojado en Netlify. Sin embargo, hacerlo haría que la página web se actualizara con cualquier entrada de usuario ingresada y haría que el chatbot fuera inútil.