Pregunta

Quiero hacer un botón que inicia mi script php después haga clic en él. Así que me acaba de hacer 2 archivos separados y tienen una acción posterior al archivo php y luego dejar que se inicia? o hay una mejor manera de hacer esto? Posiblemente en un solo documento?

Actualización:

Bueno, básicamente hizo un script que hacer una serie de unos bucles hasta que esté terminado. Así que por lo general cuando visita la página se inicia automáticamente, por lo que estoy haciendo un botón para comenzar sólo cuando lo necesito.

Más información: respuesta a una de las preguntas, "a partir de la secuencia de comandos", como en que sólo se ejecutaría el guión

.

Más información: Realmente no necesito pasar los datos de la forma de presentar el script php. Sólo quiero que mi secuencia de comandos para ejecutar cuando pulso un botón. Sólo quiero saber cuál es la mejor manera de hacer esto.

¿Fue útil?

Solución

Tener 2 archivos como usted sugirió que sería la solución más fácil.

Por ejemplo:

solución

2 archivos:

index.html

(.. your html ..)
<form action="script.php" method="get">
  <input type="submit" value="Run me now!">
</form>
(...)

script.php

<?php
  echo "Hello world!"; // Your code here
?>

solución de un solo archivo:

index.php

<?php
  if (!empty($_GET['act'])) {
    echo "Hello world!"; //Your code here
  } else {
?>
(.. your html ..)
<form action="index.php" method="get">
  <input type="hidden" name="act" value="run">
  <input type="submit" value="Run me now!">
</form>
<?php
  }
?>

Otros consejos

Usted puede hacerlo en un solo documento si has tenido una condicional basada en params enviados a través. Por ejemplo:

if (isset($_GET['secret_param'])) {
    <run script>
} else {
    <display button>
}

Creo que la mejor manera sin embargo es tener dos archivos.

Sé que esta pregunta es de 5 años de edad, pero para nadie preguntando cómo hacer esto sin volver a mostrar la página principal. Esta solución utiliza la lengua editor de dardo / secuencias de comandos.

Usted podría tener una etiqueta <object> que contiene un atributo data. Hacer que el 1px <object> por 1 píxel y luego usar algo como dardo para cambiar dinámicamente el atributo <object> del data que re-hace que la data en el 1px por objeto 1px.

Script HTML:

<object id="external_source" type="text/html" data="" width="1px" height="1px">
</object>

<button id="button1" type="button">Start Script</button>

<script async type="application/dart" src="dartScript.dart"></script>
<script async src="packages/browser/dart.js"></script>

someScript.php:

<?php
echo 'hello world';
?>

dartScript.dart:

import 'dart:html';

InputElement button1;
ObjectElement externalSource;

void main() {
    button1 = querySelector('#button1')
        ..onClick.listen(runExternalSource);

    externalSource = querySelector('#external_source');
}

void runExternalSource(Event e) {
    externalSource.setAttribute('data', 'someScript.php');
}

En tanto que no se vaya a publicar cualquier información y sólo está buscando para ejecutar un script, esto debería funcionar bien.

Sólo construir el guión de dardos usando "pub Construido (generar JS)" y luego cargar el paquete en su servidor.

¿Qué es exactamente lo que quiere decir con "comienza mi script php"? ¿Qué tipo de script PHP? Uno de generar una respuesta HTML para un usuario final, o uno que simplemente lleva a cabo algún tipo de tarea de procesamiento de datos? Si está familiarizado con el uso de la etiqueta y la forma en que interactúa con PHP, entonces usted sólo tendrá que publicar en su script PHP de destino mediante un botón de tipo "submit". Si usted no está familiarizado con las formas, echar un vistazo aquí .

Esta funciona para mí:

index.php

    <?php
       if(isset($_GET['action']))
              {
                 //your code
                 echo 'Welcome';
              }
    ?>


    <form id="frm" method="post"  action="?action" >
    <input type="submit" value="Submit" id="submit" />
    </form>

Este enlace puede ser útil:

https://blogs.msdn.microsoft.com/brian_swan/2010/02/08/getting-started-with-the-sql-server-driver-for-php/

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top