es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

La solicitud XMLHttpRequest y Fetch al archivo PHP no están funcionando en Svelte.

No puedo obtener información de un archivo PHP en un host externo utilizando Svelte.

Curiosamente, sin embargo, la solicitud XMLHTTP funciona cuando se enlaza con un archivo de texto alojado en la web.

Aquí está mi código JS:

<script>

let content = "";

function httpGet()
{
      var xmlhttp = new XMLHttpRequest();
      xmlhttp.open("GET", "https://www.kayasuleyman.co.uk/form.php?email=example");
      xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
      xmlhttp.send();
      xmlhttp.onreadystatechange = function() {
        if (this.readyState === 4 && this.status === 200) {
          content = this.responseText;
        };
      }
    }



</script>

Y aquí está el HTML:

<div id="demo">
  <button on:click="{httpGet}">Submit</button>
  <p>Output: {content}</p>
  </div>

La salida de mi archivo PHP, que simplemente debería ser “ejemplo”, no devuelve nada. Estoy desconcertado por este problema, y usar una declaración de búsqueda también no funciona.

¿Alguna idea?

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Como experto en IT especializado en javascript, php y Svelte, podría haber varias razones por las cuales no puede obtener información de un archivo PHP en un host externo usando Svelte. Aquí hay algunas sugerencias:

    1. CORS: Una posibilidad es que la Compartición de Recursos de Origen Cruzado (CORS) esté impidiendo que la solicitud del host externo acceda al archivo PHP. Puede verificar si este es el caso mediante la consola del navegador y verificando si hay errores relacionados con CORS.
    2. Configuración del servidor: Es posible que el servidor que aloja el archivo PHP tenga algunas restricciones que impidan que las solicitudes externas accedan al archivo. Puede verificar con el administrador del servidor o el proveedor de alojamiento para ver si este es el caso.

    3. Código PHP: Es posible que haya un problema con el código PHP en sí, lo que impide que devuelva la respuesta esperada. Puede intentar acceder directamente al archivo PHP en un navegador para ver si devuelve la respuesta esperada.

    4. Código Svelte: También puede haber un problema con el código Svelte, lo que impide que maneje correctamente la respuesta del archivo PHP. Puede intentar usar un método diferente para recuperar los datos, como la API Fetch, para ver si eso produce resultados diferentes.

    En general, hay varias posibles razones por las que no puede obtener información de un archivo PHP en un host externo usando Svelte. Al solucionar problemas en estas áreas diferentes, es posible que pueda identificar la causa raíz del problema y encontrar una solución.

Comments are closed.