Ejecutar función antes de enviar formulario

Me gustaría ejecutar una función antes de enviar un formulario, pero al parecer nunca se ejecuta, ¿es posible ejecutarla antes de enviarlo sin usar atributos como onsubmit="return funcion()" o enviarlo con ajax?

Formulario HTML

         <form action="search" method="GET" class="form-search" name="s-627">             <div class="search-container">                 <input class="searchBox" type="search" name="q" id="searchTerm">                 <button class="btn-form searchButton">                     <span class="icon-search">s</span>                 </button>             </div>         </form> 

Código de JS

        let form = document.querySelector('.form-search')             form.addEventListener('submit', (e) => {               e.preventDefault()               console.log('submit')               //función a ejecutar antes de enviar               saveSearch(input.value)         }) 

no puedo enviar una transaccion atravez de ethereumjs-tx

estoy escribiendo un codigo para provar la libreria web3 soy nuevo en esto pero me esta generando un error el codigo es:

const Web3 = require("web3") const web3 = new Web3("https://ropsten.infura.io/v3/b076679b90ce4f709b5f6d7b3b51bedf") const address1 = "0xb034c01065C95B7f7B3b59bed4F16b1Ef426b930" const address2 = "0x3a3fC3E59029313324c837ADF00e8149399aE0ae" const addresskey =  new Buffer.from("EE048D4584C4D87FDC0EF40B628F449671432D50C60D801F30D9BC977FA9C1E0", "hex") web3.eth.getTransaction(address2, (err, txCount) => { var rawTx = {         nonce: web3.utils.toHex(txCount),         gasPrice: web3.utils.toHex(web3.utils.toWei("2", "gwei")),         gasLimit: web3.utils.toHex(21000),         to: address1,         value: web3.utils.toHex(5000000000000000000)       }       const tx =  new EthereumTx(rawTx, {"chain": "ropsten"})       tx.sign(addresskey)       serializedTx = tx.serialize().toString("hex")       web3.eth.sendSignedTransaction("0x" + serializedTx).on("receipt",console.log) }) 

pero me lanza un error: nonce too low

¿Para que usa una uri android al momento de tener que enviar una intent a un componente?

Estoy estudiando intents en android y tengo este código:

Uri webpage = Uri.parse("http://hermosaprogramacion.blogspot.com"); Intent webIntent = new Intent(Intent.ACTION_VIEW, webpage); startActivity(webIntent); 

Comprendo que lo que hará android es buscar las aplicaciones que tengan componentes que permitan la acción de tipo ACTION_VIEW y de esta manera desencadenar la acción.

  • ¿Como sabe android que lo que se quiere hacer es abrir una pagina web en x aplicación? haciendo uso de la uri?, ¿Como sabe android que es lo que quiere decir la uri?, ¿es decir como sabe que hacer con ella? cuando se va a comunicar con un componente mediante un intent

  • Por ejemplo si hay varias aplicaciones candidatas para hacer la
    acción lo que hace android es mandar un menú de opciones y la app que el usuario elija sera la que se designe para recibir el intent,
    entonces en ese proceso ya cuando se eligio el componente y todo ¿Que papel juega la uri y como la usa android? y en el caso del ejemplo que puse arriba ¿Como sabe que se quiere abrir una pagina web? ¿Como sabe que es lo que tiene que hacer con esa url?

checkbox enviar un arreglo usando materialize

quiero enviar un arreglo de checkbox al controlador estoy utilizan do materialize pero al darle click en la casilla de checkbox no hace nada y tampoco me arroja error.

<div class='input-field col s12 m1'>   <input type='checkbox' name='medical[]' value="on"/>   <label for="medical"></label> </div> <div class='input-field col s12 m1'>   <input type='checkbox' name='medical[]' value="on"/>   <label for="medical"></label> </div> <div class='input-field col s12 m1'>   <input type='checkbox' name='medical[]' value="on"/>   <label for="medical"></label> </div>   $  medical = $  _POST['medical']; var_dump($  medical); 

enviar email con pdf adjunto mediante asp.net

He creado una aplicacion web con la cual puedo crear un pdf, adjuntarlo a un email y enviarlo, todo bien en el visual studio, es decir se crea el pdf, se adjunta al email y se envia, pero cuando publico la web tengo la situacion que se abre el pdf en el explorador web (situacion que no quiero y el pdf aparece vacio) y no se envia al email

Este es el codigo de la creacion del pdf y envio del email

                    var pdf = new ViewAsPdf2("pdf", factura);                     byte[] pdfByteArray = pdf.GetByte(ControllerContext);                     string from = ConfigurationManager.AppSettings["FromEmailID"];                      string to = ConfigurationManager.AppSettings["ToEmailID"];                      MailMessage message = new MailMessage(from, to.Replace(";", ","));                     message.Subject = "caso de entrega";                     message.SubjectEncoding = Encoding.UTF8;                      message.Body = "<p>esto es un mensaje generado automaticamente el cual contine el servicio de combustible prestado a su solicitud</p>";                     message.Body += "<img src=cid:email.jpg>";                      Attachment imageAttachment = new Attachment(Server.MapPath("/Content/imagenes/imagen-sistema/email.jpg"));                     imageAttachment.ContentId = "email.jpg";                     message.Attachments.Add(imageAttachment);                      message.Body += "<p>aqui va algun mensaje</p>";                       message.IsBodyHtml = true;                    // message.Headers.Add("Buenos dias");                      MemoryStream file = new MemoryStream(pdfByteArray);                     file.Seek(0, SeekOrigin.Begin);                     Attachment data = new Attachment(file, "RunTime_Attachment.pdf", "application/pdf");                     ContentDisposition disposition = data.ContentDisposition; //mime o rotativa                     disposition.CreationDate = System.DateTime.Now;                     disposition.ModificationDate = System.DateTime.Now;                     disposition.DispositionType = DispositionTypeNames.Attachment;                     message.Attachments.Add(data);                      SmtpClient SmtpMail = new SmtpClient(ConfigurationManager.AppSettings["SMTP"]);                     SmtpMail.Credentials = new NetworkCredential(ConfigurationManager.AppSettings["UserName"], ConfigurationManager.AppSettings["password"]);                     SmtpMail.Port = 587;                     SmtpMail.EnableSsl = true;                     SmtpMail.Send(message); 

¿Como enviar un archivo desde Java y recibir en PHP?

Mi problema es que trato de cargar un archivo (una imagen jpg) desde una aplicación Java hacia un script PHP cuya función es recibir y luego enviar el archivo a mi Storage en Firebase. Pero no recibo correctamente el archivo en mi script php. Porque nunca este se envia al storage Firebase. Siendo sincero primera vez que envió un archivo desde Java a PHP y estoy algo confundido.

Mi código de carga en Java

public void upload(File file) throws Exception {         // open a connection to the site and         // prepare it for sending multipart data         URL url = new URL("https://mandaos2019.000webhostapp.com/CONECTOR.php");         URLConnection con = url.openConnection();         // create a boundary - must not be contained in the content!         String boundary = (UUID.randomUUID().toString() + UUID.randomUUID()             .toString()).substring(0, 65);         con.setRequestProperty("Content-Type", "multipart/form-data; "             + "boundary=\"" + boundary + "\"");         con.setDoOutput(true);         con.setUseCaches(false);         // use a BufferedOutputStream for performance reasons         BufferedOutputStream bos =             new BufferedOutputStream(con.getOutputStream());         // use a PrintStream to easily write strings to the output stream         PrintStream ps = new PrintStream(bos, false, "UTF-8");         ps.println("--" + boundary);         ps.println("Content-Disposition: form-data; name=\"param\"");         ps.println();         ps.println("123456");         // [...] send other parameters         ps.flush();         // send the file(s)         DataOutputStream dos = new DataOutputStream(ps);         ps.println("--" + boundary);         ps.println("Content-Disposition: form-data; "             + "name=\"test\"; filename=\"test.zip\"");         ps.println("Content-Type: application/zip");         ps.println();         ps.flush();         FileInputStream fis = new FileInputStream(file);         byte[] buffer = new byte[0xFFFF];         int bytesRead;         while ((bytesRead = fis.read(buffer)) != -1) {             dos.write(buffer, 0, bytesRead);         }         dos.flush();         // close the multipart message         ps.println();         ps.println("--" + boundary + "--");         // this flushes and closes all streams         dos.close();          System.out.println(con);      } 

Este código debería ser capaz de enviar el archivo e información sobre este.

El código con que recibo y envió el archivo al Storage:

<?php use Kreait\Firebase;  $  fire = new firebas();      if(is_uploaded_file($  _FILES['userfile']['tmp_name'])) {         echo  "File ".  $  _FILES['userfile']['name']  ." uploaded successfully to" ;          $  fire->upload($  _FILES['userfile']['tmp_name']);      //move_uploaded_file ($  _FILES['userfile'] ['tmp_name'], "$  uploads_dir/$  dest");     } else {         echo "Possible file upload attack: ";         echo "filename '". $  _FILES['userfile']['tmp_name'] . "'.";         print_r($  _FILES);     }  class firebas{     private $  serviceAccount;     private $  firebase;     private $  key= 'bfe462a7ee727b46cef5a377fe0dc52ee895b5d9';     private $  bucket;      function __construct(){         $  this->serviceAccount = ServiceAccount::fromJsonFile(__DIR__  .  '/json_firebase/credencial.json');         $  this->firebase = (new Factory)             ->withServiceAccount($  this->serviceAccount,$  this->key)             ->withDefaultStorageBucket('prueba-medidor-tiempo.appspot.com')             ->create();          $  storage = $  this->firebase->getStorage();         $  this->bucket = $  storage->getBucket();     }      public function upload($  file){         $  this->bucket->upload(         file_get_contents($  file['imageToUpload']['tmp_name']),         [             'cap' => $  file         ]         );     }   } 

Gracias y disculpen mi ignorancia.

Envíar Correo de Bienvenida al Registrar Usuario PHPMailer

Tengo un formulario que usa un script escrito en PHP para registrar en una base de datos MySQL nombre, apellido, seudónimo, contraseña, cuenta de e-mail y contraseña que se encuentran en el formulario. Ya pude realizar una conexión con la base de datos para registrar esos datos pero ahora necesito complementar esto con el envío de un correo electrónico de bienvenida con los datos del usuario que se registró al e-mail que los usuarios coloquen en el formulario de registro.

He leído sobre la función mail() de PHP pero quisiera saber como “recoger” el correo electrónico que se coloca en el formulariode registro y también como hacer para que cuando se haga click en el botón tipo input enviar, se ejecute el script de envío de correo electrónico y el que ya tengo que conecta con la base de datos para registrar los datos.

Espero su colaboración.

Saludos.

Enviar datos de formulario oculto

cuando escribo los datos de un usuario en wordpress para registrarse, deseo que al pulsar el botón “Registrar o Enviar” este acceda al sitio, es decir que quede logueado de manera automática. (mediante código ya he logrado activarlo sin necesidad de confirmar por email)

Se me ocurre tener un formulario oculto en el mismo sitio que llene los datos de los inputs con los valores del usuario recién registrado, y acceda de inmediato. Para esto pienso que al pulsar el botón Registrar realice el envío de los dos formularios, uno que registra y otro que loguee al usuario.

entiendo puedo usar inputs ocultos, pero que código puedo usar para que al pulsar el botón Registrar, también se active el botón Login.

de antemano muchas gracias.

<input id="prodId" name="prodId" type="hidden" value="xm234jq"> 

Como enviar varios comandos con jsch en java?

me tengo un problema y es que quiero enviar varios comandos usando usando la libreria jsch de java pero me gustaria que fuera en la misma sesion ya que en mi caso es con un switch y debo enviar “configuration terminal” y bueno otro comando aparte. Voy a anexar las dos clase que utilizo una es donde interactuo y la otra es donde tengo todo lo que es la conexion con via ssh. Clase 1:Solo envia los datos para establecer la conexion y envia los comandos.

try {       SSHConnector sshConnector = new SSHConnector();       sshConnector.connect(USERNAME, PASSWORD, HOST, PORT);       String result0=sshConnector.executeCommand("conf t");       String result1=sshConnector.executeCommand("otro comando"); } catch (JSchException ex) {         ex.printStackTrace();          System.out.println(ex.getMessage());     } catch (IllegalAccessException ex) {         ex.printStackTrace();          System.out.println(ex.getMessage());     } catch (IOException ex) {         ex.printStackTrace();          System.out.println(ex.getMessage());     } catch (InterruptedException ex) {         Logger.getLogger(InterfaceUser.class.getName()).log(Level.SEVERE, null, ex);     } 

Clase 2: En esta se hace la conexion via ssh.

private static final String ENTER_KEY = "n"; /**  * Sesión SSH establecida.  */ private Session session;  public void connect(String username, String password, String host, int port)     throws JSchException, IllegalAccessException {     if (this.session == null || !this.session.isConnected()) {         JSch jsch = new JSch();          this.session = jsch.getSession(username, host, port);         this.session.setPassword(password);          // Parametro para no validar key de conexion.         this.session.setConfig("StrictHostKeyChecking", "no");          this.session.connect();     } else {         throw new IllegalAccessException("Sesion SSH ya iniciada.");     } }  public final String executeCommand(String command)     throws IllegalAccessException, JSchException, IOException {     if (this.session != null && this.session.isConnected()) {          // Abrimos un canal SSH. Es como abrir una consola.         ChannelExec channelExec = (ChannelExec) this.session.             openChannel("exec");          InputStream in = channelExec.getInputStream();          // Ejecutamos el comando.         channelExec.setCommand(command);         channelExec.connect();          // Obtenemos el texto impreso en la consola.         BufferedReader reader = new BufferedReader(new InputStreamReader(in));         StringBuilder builder = new StringBuilder();         String linea;          while ((linea = reader.readLine()) != null) {             builder.append(linea);             builder.append(ENTER_KEY);         }          // Cerramos el canal SSH.          channelExec.disconnect();           // Retornamos el texto impreso en la consola.         return builder.toString();     } else {         throw new IllegalAccessException("No existe sesion SSH iniciada.");     } }