Foros del Web » Programando para Internet » Javascript »

LLamar a una función desde un boton en php

Estas en el tema de LLamar a una función desde un boton en php en el foro de Javascript en Foros del Web. BUENAS TARDES AMIGOS: TENGO EL SGTE. PROBLEMA TENGO ESTE CÓDIGO Y NECESITO EN LA PARTE FINAL LLAMAR A UNA FUNCIÓN JAVASCRIPT DESDE UN BOTON PERO ...
  #1 (permalink)  
Antiguo 28/10/2008, 16:09
 
Fecha de Ingreso: mayo-2004
Mensajes: 130
Antigüedad: 19 años, 11 meses
Puntos: 0
LLamar a una función desde un boton en php

BUENAS TARDES AMIGOS: TENGO EL SGTE. PROBLEMA TENGO ESTE CÓDIGO Y NECESITO EN LA PARTE FINAL LLAMAR A UNA FUNCIÓN JAVASCRIPT DESDE UN BOTON PERO ME SALE ERROR. PODRÍAN AYUDARME A CORREJIR EL PROBLEMA?
SALUDOS. GRACIAS.

Código php:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  5. <title>Sistema de encuesta</title>
  6. <script language="javascript" type="text/javascript" src="funciones_javascript.js">
  7.  
  8. <!--
  9.         function submitbutton_Poll1() {
  10.             var form        = document.frmencuesta;        
  11.             var radio       = form.opcion;
  12.             var radioLength = radio.length;
  13.             var check       = 0;
  14.  
  15.            
  16.             for(var i = 0; i < radioLength; i++) {
  17.                 if(radio[i].checked) {
  18.                     form.submit();
  19.                     check = 1;                 
  20.                 }
  21.             }      
  22.             if (check == 0) {
  23.                 alert('Debe seleccionar una promoción para poder participar');
  24.             }
  25.         }      
  26.         //-->
  27.        
  28. </script>
  29. <link href="../estilos/css.css" rel="stylesheet" type="text/css" />
  30. <style type="text/css">
  31. <!--
  32. body {
  33.     background-color: #990000;
  34. }
  35. -->
  36. </style></head>
  37. <body>
  38. <?php
  39. require('conexion.php');
  40. //consultamos si hay datos en la tabla
  41. $cons_cant=mysql_query("SELECT COUNT(*) AS nroenc FROM encuesta",$con);
  42. $cant=mysql_fetch_array($cons_cant);
  43. if($cant['nroenc']==0){
  44.     echo "<p>No hay encuesta</p>";
  45.     echo "<p><a href=\"admin.php\">Agregar encuesta</p>";
  46. }else{
  47.     //consultamos la encuesta actual
  48.     $cons_enc_act=mysql_query("SELECT * FROM encuesta",$con);
  49.     $datos=mysql_fetch_array($cons_enc_act);
  50.     //obtenemos los datos de la tabla
  51.     $id=$datos['idenc'];
  52.     $preg=$datos['pregunta'];
  53.     $opc=$datos['opciones'];
  54.     //empezamos a crear la estructura html
  55.     echo '<br>';
  56.     echo
  57.     <center><span class='pregunta-encuesta'><p style=\text-align:center;\"><strong>".$preg."</strong></p></span></center>
  58.     <div id=\"resultados\"> \n";
  59.     //especificamos un formulario
  60.     echo
  61.     <form onsubmit=\"cargarResultados(); return false\" name=\"frmencuesta\" action=\"\">
  62.     <input type=\"hidden\" name=\"cod\" value=\"".$id."\" /> \n";
  63.     //especificamos opciones
  64.     //NOTA, usamos explode para separar cada item por las comas
  65.     $opciones = explode(",",$opc);
  66.     $i=0;
  67.     //contamos cuantas partes tiene opciones
  68.     $tot_elems=count($opciones);
  69.     while($i<=$tot_elems-1){
  70.         $j=$i+1;
  71.         //note que $opciones es un array y visualizamos sus elementos
  72.         //mediante esta forma: elemento=$opciones[ubicacion_integer]
  73.         echo
  74.         <p>
  75.             <span class='opcion-encuesta'><input type=\"radio\" name=\"opcion\" value=\"".$j."\" id=\"opcion".$j."\" /> ".trim($opciones[$i])."
  76.         </p></span> \n";
  77.         $i++;
  78.     }
  79.     echo
  80.     <input type=\"hidden\" name=\"nroopciones\" value=\"".$i."\" />";
  81.          
  82.     echo
  83.     <p style=\"text-align:center;\">
  84.         <input class=\"boton\" type=\"submit\" value=\"Votar\" />
  85.             <button onclick='submitbutton_Poll1();'></button>   </p>
  86.     </form>
  87.     </div>";
  88. }
  89. ?>
  90. </body>
  91. </html>

Última edición por jam1138; 28/10/2008 a las 17:54 Razón: Coloreo código
  #2 (permalink)  
Antiguo 28/10/2008, 16:14
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.341
Antigüedad: 21 años, 5 meses
Puntos: 17
Respuesta: LLamar a una función desde un boton en php

Esto debería ser tema de JavaScript, no de PHP....

¿Por qué no funciona? ¿Qué sintomas hay? ¿el código HTML (más js) se genera bien?
  #3 (permalink)  
Antiguo 28/10/2008, 16:59
 
Fecha de Ingreso: mayo-2004
Mensajes: 130
Antigüedad: 19 años, 11 meses
Puntos: 0
Respuesta: LLamar a una función desde un boton en php

lo que sucede es lo sgte.
cuando le doy click en el boton "votar", me sale error, no logra ejecutarse la función.
  #4 (permalink)  
Antiguo 28/10/2008, 17:25
 
Fecha de Ingreso: junio-2008
Mensajes: 76
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: LLamar a una función desde un boton en php

Bien, esto es tema de Javascript... hay varias cosas que posiblemente te estén fallando al colocar:
<button onclick='submitbutton_Poll1();'></button> </p>

1. En vez de colocar el tag button (nunca lo he utilizado así), prueba con:
<input type='button' value='Presione Aqui' onClick='submitbutton_Poll1()' />

2. Quita el ";" despues de la función: 'submitbutton_Poll1();'.

3. Si en vez de mandar a "submit" inmediatamente, vas a trabajar con el click en el boton mediante la funcion... Necesitas colocar la función de esta forma:
<input type='button' value='Presione Aqui' onClick='submitbutton_Poll1(this.form)' />

this.form le dice a la función Javascript que trabajaras con datos del formulario al presionar el boton.
  #5 (permalink)  
Antiguo 28/10/2008, 18:09
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 19 años, 8 meses
Puntos: 102
Respuesta: LLamar a una función desde un boton en php

Zicco:
- <button> o <input>, tienen asociado el evento onclick. Ambos deben funcionar. Ese no sería el error.
- El ";" no le hace daño; es javascript, indica el fin de una sentencia, como es la única se puede eliminar. Ese tampoco es el error.
- y si utilizas "funcion(algo)" es porque la funcion espera un "algo" para trabajar. No por indicar "this.form" javascript "hace magia" y adivina lo que tendrá que hacer; lo que hará la función es lo que específicamente el programador le indique que haga. En este caso la función no espera ningún argumento, el llamado es correcto (sin "this.form"). Ese tampoco es el error.

¿y cuál es entonces el erro? , LIVERPOOL debería poder decirlo en lugar de dejar que adivinemos. un "me sale error" no dice nada. ¿qué error?, ¿de qué forma?, ¿en dónde?, ¿qué dice exactamente?... al menos yo no lo tengo nada claro :-/ pero igual creo es problema de JS.

Tema movido desde PHP.


Por favor LIVERPOOL, evita escribir en mayúscula, se interpreta que estás gritando.
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #6 (permalink)  
Antiguo 29/10/2008, 11:45
 
Fecha de Ingreso: mayo-2004
Mensajes: 130
Antigüedad: 19 años, 11 meses
Puntos: 0
Respuesta: LLamar a una función desde un boton en php

Justamente el error esta aquí:

echo " <p style=\"text-align:center;\"> <input class=\"boton\" type=\"submit\" value=\"Votar\" /> <button onclick='submitbutton_Poll1();'></button> </p>


como podrás ver en la estructura de ese código no puedo adicionar lo que me sugieres que escriba.

Tu me sugieres que ponga esto:

<input type='button' value='Presione Aqui' onClick='submitbutton_Poll1(this.form)' />

necesito que el botón esté centrado, pero lo que necesito es aplicar el evento onclick bajo la estructura que aparece arriba, si no lo habo así, cuando le doy click al boton votar, aparece en la parte inferior izquierda el navegador un triángulo amarillo indicando ke hay un error, dice: se esperaba un objeto.

Al ocurrir esto no se ejecuta la función a la que estoy llamando.
  #7 (permalink)  
Antiguo 29/10/2008, 12:32
 
Fecha de Ingreso: mayo-2004
Mensajes: 130
Antigüedad: 19 años, 11 meses
Puntos: 0
Respuesta: LLamar a una función desde un boton en php

zicco:

tengo este código

echo "
<p style=\"text-align:center;\">
<input class=\"boton\" type=\"submit\" value=\"Votar\" />
</p>

necesito insertar alli un onclick que llama a una funcion votar(), como puedo hacer.

Muchas gracias.
  #8 (permalink)  
Antiguo 29/10/2008, 14:07
 
Fecha de Ingreso: junio-2007
Mensajes: 189
Antigüedad: 16 años, 9 meses
Puntos: 3
Respuesta: LLamar a una función desde un boton en php

Prueba con

Código PHP:
echo " <p style=\"text-align:center;\"> <input class=\"boton\" type=\"submit\" value=\"Votar\" /> <button onclick=\"javascript:submitbutton_Poll1();\" /> </p> 
Lo que estoy haciendo es usar comillas dobles, y expecificando que la funcion es en javascript. Tmabien e sacado el </button> y lo e insertado directamente en el button terminando la etiqueda con un />.

Espero te haya servido. Un saludo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:08.