Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

224
Visualizações
¿Cómo reemplazar un cuadro de selección de javascript con datos de funciones de PHP?

Soy nuevo en JavaScript. Tengo el siguiente código JavaScript en mi archivo onboard.js .

 var questions = [ {question: "What's your country?", type: "select", response: ['India','America','Japan']} ]

El código anterior es un código de muestra que contiene una lista de tres países de forma estática. Tengo una función de PHP que devuelve la lista de 251 países de la base de datos en mi archivo functions.php . ¿Cómo puedo reemplazar la parte de response del código JS anterior con la lista de datos de países devueltos por mi función PHP a continuación?

 function countriesForJS(){ global $pdo; $stmt = $pdo->prepare("SELECT id, name FROM countries"); $stmt-> execute(); while($row = $stmt->fetch()){ $data[] = $row; } return $data; }
over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

Su pregunta podría interpretarse de otra manera, pero tengo dos posibilidades:

1 - Suponiendo que la secuencia de comandos JS y la secuencia de comandos PHP están separadas, entonces debe realizar una solicitud http al servidor (usando AJAX, por ejemplo)

2 - Suponiendo que el código JS y PHP estén en el mismo script, sugeriría incrustar el código php en el código JS como se muestra a continuación:

 <script> ... var serverCountries = "<?php echo implode(",", countriesForJS()) ?>"; var questions = [ { question: "What's your country?", type: "select", response: serverCountries.split(',')// replace the existing response by server countries /* response: ['India','America','Japan', ...serverCountries.split(',')]// or add server countries to the existing response */ } ]; ... </script>

EDITAR (JS, los scripts PHP están separados) En este caso, asumo que se puede acceder al servidor a través de un punto final, y se puede acceder a la salida del script llamando, por ejemplo, a la URL de API a continuación: http://[YOUR_HOST]/my_php_script.php [asumiendo nuevamente que el método http es GET y no hay autenticación]

En este caso, aquí hay una solicitud jQuery ajax que se puede hacer desde su script JS:

(necesita importar jQuery si aún no lo ha hecho)

 $.ajax({ url: "http://[YOUR_HOST]/my_php_script.php", type: 'GET', dataType: 'json', // added data type success: function(serverCountries) { console.log(serverCountries); var questions = [ { question: "What's your country?", type: "select", response: serverCountries } ]; // do something with your questions variable .... } });

Y el script my_php_script.php es algo así como:

 <?php function countriesForJS(){ global $pdo; $stmt = $pdo->prepare("SELECT id, name FROM countries"); $stmt-> execute(); while($row = $stmt->fetch()){ $data[] = $row; } return $data; } $data = countriesForJS(); header('Content-Type: application/json'); echo json_encode($data); ?>
over 4 years ago · Santiago Trujillo Relatório

0

si usa jquery, puede usar autocompletar, que realiza una solicitud a su php y completa un campo de entrada con los datos recuperados. https://jqueryui.com/autocomplete/

 $('#el nombre de tu input').autocomplete({ source: function (request, response) { $.ajax( type: 'GET', url: route + 'la ruta de tu archivo php', data: { term: request.term, // term es lo que envias a php para filtrar }, success: function (data) { response(data) } }) }, minLength: 1, select: function (event, ui) { codeAccountGenAnaPro = ui.item.code // codeAccountGenAnaPro es el valor donde se va a guardar una vez selecciones del autocomplete } })

ojala te guste la respuesta y te ayude

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda