Mi problema es que estoy usando la biblioteca yiono SCRIPT sql e intento integrarla con HTML, pero tengo problemas con 2 piezas. Todo lo demás está funcionando maravillosamente.
Por ejemplo, quiero hacer un formulario HTML para actualizar el valor 'Pro' en la fila que 'ID' = '1'
Funciona muy bien cuando ejecuto la función en IDE, pero no sé cuál es la mejor manera de ponerlos como variables desde una página HTML. Intenté algunas tonterías con las solicitudes GET pero no pude hacer que funcionara.
function update_row(){ var SQL = new gSQL(); SQL.DB('*redacted*').TABLE('DAILY-DATA').UPDATE('Pro').WHERE('ID', '=', '1').VALUES('KAOS').setVal(); } Problema 1: obtenga la entrada del formulario en .WHERE('ID', '=','from_html_form') y me gustaría hacerlo dentro del entorno de Google a través de la aplicación web.
Ejemplo mínimo reproducible
Aquí está la función
aquí está el resultado
Reemplazar
function update_row(){ var SQL = new gSQL(); SQL.DB('*redacted*').TABLE('DAILY-DATA').UPDATE('Pro').WHERE('ID', '=', '1').VALUES('KAOS').setVal(); }por
function update_row(input = '1'){ var SQL = new gSQL(); SQL.DB('*redacted*') .TABLE('DAILY-DATA') .UPDATE('Pro') .WHERE('ID', '=', input) .VALUES('KAOS') .setVal(); }Principales cambios
Agregue el disparador simple a continuación a un archivo .gs en su proyecto de Google Apps Script.
function doGet(e){ const html = ` <input type="number" /> <button onClick="myFunction();">Submit</button> <script> function myFunction(){ google.script.run .withSuccessHandler(()=> { const div = document.createElement('div'); div.innerText = 'Done!' document .body .appendChild(div) }) .update_row(document.querySelector('input').value); } </script>` return HtmlService.createHtmlOutput(html); }Para probar esto, tendrá que implementar como aplicación web. Siga las instrucciones para esto en https://developers.google.com/apps-script/guides/web .
Recursos