Foros del Web » Programando para Internet » PHP »

Undefined index submit

Estas en el tema de Undefined index submit en el foro de PHP en Foros del Web. Hola a todos estoy queriendo hacer un formulario que contiene dos botones, Enviar y Borrar el detalle es que quiero usar el siguiente método en ...
  #1 (permalink)  
Antiguo 13/11/2014, 14:58
 
Fecha de Ingreso: abril-2014
Mensajes: 51
Antigüedad: 10 años
Puntos: 1
Undefined index submit

Hola a todos estoy queriendo hacer un formulario que contiene dos botones, Enviar y Borrar el detalle es que quiero usar el siguiente método en un mismo action del form hacer varias funciones dependiendo del boton que presionen

Código HTML:
<form action="procesar.php" method="post" name="agregar" id="agregar">
        <input type="submit" name="enviar" value="Editar" >
	<input type="submit" name="borrar" value="Borrar" >
</form> 
Código PHP:


if(isset($_POST['enviar'])) { 
echo 
"funciona enviar";
}else{
echo 
"no fue enviar";

este es un ejemplo que al probarlo funciona bien, ahora en mi caso la diferencias es que estos dos botones los creo por medio de php y este php lo integro a mi html por medio de javascript

el proceso seria el siguiente
No. de alumno
1
2
3

se selecciona un numero de la lista y aparece sus datos que por medio de javascript llamo un php que contiene:

nombre, apellido, edad
boton1 y boton2

este php envia correctamente cada dato que seria nombre, apellido y edad
pero boton1 y bonton2 no funcionan

al integrar
Código PHP:


if(isset($_POST['boton1'])) { 
echo 
"funciona enviar";
}else{
echo 
"no fue enviar";

me dice undefined index boton1

no entiendo cual es el fallo si los otros post nombre apellido y edad si los detecta el metodo es post. alguien sabe cual es mi error?
  #2 (permalink)  
Antiguo 13/11/2014, 15:02
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Undefined index submit

Lo que dices está errado, si te sale "undefined index boton1" sería porque intentas acceder a dicho índice directamente, pero no es así:

Código PHP:
Ver original
  1. // MAL (undefined index)
  2. $_POST['boton1'];
  3. $foo = $_POST['boton1'];
  4. echo $_POST['boton1'];

Debería mostrarte "no fue enviar", porque isset() verifica precisamente la existencia de dicho índice.

Es más, si ejecuto ese código sólo, sin nada más: me imprime "no fue enviar", así que los resultados que dices obtener no son acertados.

Código PHP:
Ver original
  1. // BIEN
  2. if(isset($_POST['boton1'])) {
  3. echo "funciona enviar";
  4. }else{
  5. echo "no fue enviar";
  6. }

¿Podrías revisar dos veces tus código y/o mostrarnos el código completo?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 13/11/2014, 15:29
 
Fecha de Ingreso: abril-2014
Mensajes: 51
Antigüedad: 10 años
Puntos: 1
Respuesta: Undefined index submit

ok el codigo paso a paso seria el siguiente:

este me ayuda a abrir la informacion de un php
Código Javascript:
Ver original
  1. <script>
  2.    
  3.     function cargar(){
  4.    
  5.     var n=document.getElementById('bus').value;
  6.    
  7.     if(n==''){
  8.    
  9.      document.getElementById("myDiv").innerHTML="";
  10.      document.getElementById("myDiv").style.border="0px";
  11.      document.getElementById("pers").innerHTML="";
  12.  
  13.    
  14.      return;
  15.     }
  16.    
  17.     loadDoc("q="+n,"conexion/proc.php",function(){
  18.    
  19.       if (xmlhttp.readyState==4 && xmlhttp.status==200){
  20.    
  21.         document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
  22.         document.getElementById("myDiv").style.border="1px solid #A5ACB2";
  23.         document.getElementById("myDiv").style.width="100px";
  24.         }else{  document.getElementById("pers").innerHTML='';
  25.         }
  26.    
  27.       });
  28.          
  29.     }
  30.    
  31.     //-------------------------------
  32.    
  33.     function myFunction2(cod){
  34.     loadDoc("vcod="+cod,"conexion/proc2.php",function(){
  35.    
  36.       if (xmlhttp.readyState==4 && xmlhttp.status==200){
  37.    
  38.         document.getElementById("pers").innerHTML=xmlhttp.responseText;
  39.         }});
  40.     }
  41.    
  42.     </script>
seguido el html
Código HTML:
Ver original
  1. <div id="myDiv">
  2. </div>
  3. <form action="conexion/editar.php" method="post" name="agregar" id="agregar">
  4. <div id="pers" class="pers"></div>
  5. </form>

el primer php "proc"que busca y llama al php"proc2" que tiene los botones y inputs

Código PHP:
Ver original
  1. <?php
  2.     include("../../conexion/conectar_bd_global.php");  
  3. $q=$_POST['q'];
  4. $conexion=conectar_bd();
  5.  
  6. $sql="select * from tabla_alumnos where maestro LIKE '".$q."%'";
  7. $res=mysql_query($sql,$con);
  8.  
  9. if(mysql_num_rows($res)==0){
  10.  
  11. echo '<b>No hay alumnos</b>';
  12.  
  13. }else{
  14.  
  15. while($fila=mysql_fetch_array($res))
  16.  
  17.   echo '<div class="sugerencias" onclick="myFunction2('.$fila["no"].')">
  18.  '.$fila['no'].'</div>';
  19.  }
  20.  
  21. ?>

y el php "proc2" que en resumen solo pondré los botones y dos inputs aqui carga los datos del alumno para poder editar

Código PHP:
Ver original
  1. echo '
  2. <input value="'.$alumnonombre.'" type="text" name="alumno" id="alumno" size="9" required readonly>
  3. <input value="'.$alumnoapellido.'" type="text" name="apellido" id="apellido" size="9" required readonly>
  4.  
  5.  
  6.  
  7.         <div class="btncenter" align="center">
  8.        <input type="submit" name="enviar" value="Editar" >
  9.         <input type="submit" name="delete" value="Borrar" >
  10.        </div>
  11. ';

y el ultimo php seria el accion del form.
  #4 (permalink)  
Antiguo 13/11/2014, 16:15
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Undefined index submit

¿Y en qué parte accedes al índice "boton1" (porque no se ve en el código que muestras)?

Por favor, lee bien tu mensaje inicial y observa que no tiene nada que ver lo que explicas ahí con el código que muestras.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 13/11/2014, 16:49
 
Fecha de Ingreso: abril-2014
Mensajes: 51
Antigüedad: 10 años
Puntos: 1
Respuesta: Undefined index submit

si disculpa lo primero solo era un ejemplo de mi problema en realidad boton1 no existe, en la segunda respuesta ya copie lo que realmente estoy utilizando ya no es boton1 si no "enviar" y el action del form es

Código HTML:
<form action="conexion/editar.php" method="post" name="agregar" id="agregar"> 
los inputs "enviar" y el segundo "borrar" los podras ver en esta ultima linea que puse

Código PHP:
echo '
<input value="'
.$alumnonombre.'" type="text" name="alumno" id="alumno" size="9" required readonly>
<input value="'
.$alumnoapellido.'" type="text" name="apellido" id="apellido" size="9" required readonly>
 
 
 
        <div class="btncenter" align="center">
        <input type="submit" name="enviar" value="Editar" >
        <input type="submit" name="delete" value="Borrar" >
        </div>
'


el accion del form seria este que si no lo coloque

Código PHP:
if(isset($_POST['enviar'])) {  
echo 
"funciona enviar"
}else{ 
echo 
"no fue enviar"

que es lo que comentaba que no funciona por que me dice
Undefined index enviar

espero entiendas mi pequeño desorden
  #6 (permalink)  
Antiguo 13/11/2014, 17:39
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Undefined index submit

Pues no, no se entiende nada.

Como te explique en los mensajes de antes: el error de "undefined index" sólo ocurre cuando accedes a un índice directamente sin usar isset(), pero así como muestras no debería darte error sino mostrarte "no fue enviar".

Así que mientras no muestres el código completo y bien ordenado va a ser imposible ayudarte.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Etiquetas: formulario, html, index, submit, undefined
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 03:52.