Foros del Web » Programando para Internet » PHP »

No puedo capturar elelmentos de un formulario hecho en php

Estas en el tema de No puedo capturar elelmentos de un formulario hecho en php en el foro de PHP en Foros del Web. Buenas tardes a todos apreciaría su ayuda con mi situación que es la siguiente: la página es para resolver quebrados u operaciones con fracciones (hecho), ...
  #1 (permalink)  
Antiguo 02/11/2011, 14:46
 
Fecha de Ingreso: noviembre-2011
Mensajes: 3
Antigüedad: 12 años, 5 meses
Puntos: 0
No puedo capturar elelmentos de un formulario hecho en php

Buenas tardes a todos apreciaría su ayuda con mi situación que es la siguiente: la página es para resolver quebrados u operaciones con fracciones (hecho), la página esta dividida básicamente en dos secciones; una donde se presentan ejemplos de operaciones pulsando un boton que representa la operacion, la segunda parte es donde se propone un ejercicio y se envia los resultados en un formulario para evaluarlos.

En la segunda parte es donde tengo un problema, primero se muestra la página vacía, seleccionando la operación se presenta el ejercicio propuesto, dos campos para el numerador y denominador, ademas un botón para verificar. El problema radica que mi página hace exactamente lo que menciono, pero al pulsar el botón de ejecutar no hace nada. Estuve probando con la instrucción
Código PHP:
if (isset($_POST["comprobar"])){
    echo 
"holaaaa";

(comprobar es el nombre y valor de mi botón), pero no imprime el "hola" en donde pensé que se ejecutaria. Ya no sé por donde buscar.

La lógica de mi código php es esta: según el div en html desde el que se selecciona la operación, verifico que se haya pulsado el botón, de ahi realizo la operación con números aleatorios, la reduzco e imprimo según el div de procedencia.

mi codigo html es este:
Código HTML:
<!DOCTYPE html>
<html  lang="es">
<head>
<meta charset="UTF-8">
<title>Quebrados</title>
<link href="quebrados.css" rel="stylesheet" type="text/css" />
</head>
<body id="general">
    <div id='titulo'>Quebrados</div>  
    <div id='principal'>
        <div id='encabezado'>
            La introducción ira aquí.
        </div>
        <div id='ejemplo'>
            <div id='ejercicioSuperior'>
                <form action="quebrados.php" method="post">
                    <input type="submit" name="operacion" value ="+">
                    <input type="submit" name="operacion" value ="-">
                    <input type="submit" name="operacion" value ="*">
                    <input type="submit" name="operacion" value ="/">
                </form>
                <?php
                    include ("procesamiento.php");    
                    $operacion = 'operacion';
                    operacion($operacion);   
     
                ?>                
            </div>            
            <div id='ejercicioInferior'>
                La descripcion del ejemplo aqui
            </div>
        </div>
        <div id='ejercicio'>
            <div id='ejercicioSuperior'>
                <form action="quebrados.php" method="post">
                    <input type="submit" name="ejercicio" value ="+">
                    <input type="submit" name="ejercicio" value ="-">
                    <input type="submit" name="ejercicio" value ="*">
                    <input type="submit" name="ejercicio" value ="/">
                </form>
                <?php  
                    $operacion = 'ejercicio';
                    operacion($operacion);                    
                ?>  
            </div>
            <div id='ejercicioInferior'>
                La descripcion del ejericio aqui
            </div>
        </div>
        <div id='pie'>
            La conclusión ira aquí
        </div>
    </div>            
</body>
</html> 
y en php
Código PHP:
<?php
function operacion ($operacion) {    
    
$numerador1 rand(19);
    
$numerador2 rand(19);
    
$denominador1 rand(19);
    
$denominador2 rand(19);
    
$valor='';         
    
$numerador '';
    
$denominador '';                     
    if(isset(
$_POST[$operacion])){
        
$valor $_POST[$operacion];
        
$igual='=';
        switch (
$valor) {
        case (
'+'):
            if(
$denominador1==$denominador2){
                
$denominadorFinal $denominador2;                                 
                
$numeradorFinal $numerador1 $numerador2
            }else{
                
$denominadorFinal $denominador1 $denominador2;
                
$numeradorTotal1 $numerador1$denominador2;
                
$numeradorTotal2 $numerador2$denominador1;
                
$numeradorFinal $numeradorTotal1 $numeradorTotal2;                           
            }                                
            break;
        case (
'-'): 
            while((
$numerador1/$denominador1)<($numerador2/$denominador2)){
                
$numerador1 rand(19);
                
$numerador2 rand(19);
                
$denominador1 rand(19);
                
$denominador2 rand(19);
            }            
            if(
$denominador1==$denominador2){
                
$denominadorFinal $denominador2;                                 
                
$numeradorFinal $numerador1 $numerador2
            }else{
                
$denominadorFinal $denominador1 $denominador2;
                
$numeradorTotal1 $numerador1$denominador2;
                
$numeradorTotal2 $numerador2$denominador1;
                
$numeradorFinal $numeradorTotal1 $numeradorTotal2;                 
            }                                
        break;
        case (
'*'):            
            
$denominadorFinal $denominador1 $denominador2;                
            
$numeradorFinal $numerador1 $numerador2;                                 
            
        break;
        case (
'/'):            
            
$denominadorFinal $denominador1 $numerador2;                
            
$numeradorFinal $numerador1 $denominador2;                                             
        break;
        }
        
extract(reduccion($numeradorFinal$denominadorFinal));
        
$numerador $numeradorReduccion;
        
$denominador $denominadorReduccion;            
        if(
$denominador1==1){
            
$denominador1 '';
        }
        if (
$denominador2 ==1){
            
$denominador2 '';
        }    
        echo 
$operacion" es la operacion <br />";
        if(
$operacion == 'operacion'){
            echo 
"<table id='tabla1'>";
            echo 
"<tr>";
                echo 
"<td>".$numerador1."</td>";
                echo 
"<td>".$valor."</td>";
                echo 
"<td>".$numerador2."</td>";                        
                echo 
"<td>".$igual."</td>";                
                echo 
"<td>".$numerador."</td>";
            echo 
"</tr>";
            echo 
"<tr>";
                echo 
"<td>".$denominador1."</td>";
                echo 
"<td></td>";
                echo 
"<td>".$denominador2."</td>";                                                                       
                echo 
"<td></td>";
                echo 
"<td>".$denominador."</td>";            
            echo 
"</tr>";
            echo 
"</table>";  
        }elseif(
$operacion == 'ejercicio'){        
            echo 
"<form action='quebrados.php' action='post' target='_self' >";
            echo 
"<table id='tabla1'>";
            echo 
"<tr>";
                echo 
"<td>".$numerador1."</td>";
                echo 
"<td>".$valor."</td>";
                echo 
"<td>".$numerador2."</td>";                        
                echo 
"<td>".$igual."</td>";                                   
                echo 
"<td><input type='text' name='numeradorI' size='2' maxlength='2' /></td>";                
            echo 
"</tr>";
            echo 
"<tr>";
                echo 
"<td>".$denominador1."</td>";
                echo 
"<td></td>";
                echo 
"<td>".$denominador2."</td>";                                                                       
                echo 
"<td></td>";
                echo 
"<td><input type='text' name='denominadorI' size='2' maxlength='2' /></td>";                                
                echo 
"<td><input type='submit' name='comprobar' value='comprobar' /></td>";
            echo 
"</tr>";
            echo 
"</table>";  
            echo 
"</form>";            
            }                    
    }else{
        
$numerador1 '';
        
$numerador2 '';
        
$denominador1 '';
        
$denominador2 '';
        
$igual='';                                                            
    }    
    
}

function 
reduccion($numeradorReduccion$denominadorReduccion) {       
    
$noDivisible2 true;
    
$noDivisible3 true;
    
$noDivisible5 true;
    
$noDivisible7 true;
    
$noDivisible11 true;
    while(
$noDivisible2){
        if(
$numeradorReduccion%2==&& $denominadorReduccion%2==0){
        
$numeradorReduccion /=2;
        
$denominadorReduccion /=2;       
        }else{
            
$noDivisible2 false;
        }
    }
    while(
$noDivisible3){
        if(
$numeradorReduccion%3==&& $denominadorReduccion%3==0){
        
$numeradorReduccion /=3;
        
$denominadorReduccion /=3;        
        }else{
            
$noDivisible3 false;
        }
    }
    while(
$noDivisible5){
        if(
$numeradorReduccion%5==&& $denominadorReduccion%5==0){
        
$numeradorReduccion /=5;
        
$denominadorReduccion /=5;
        }else{
            
$noDivisible5 false;
        }
    }
    while(
$noDivisible7){
        if(
$numeradorReduccion%7==&& $denominadorReduccion%7==0){
        
$numeradorReduccion /=7;
        
$denominadorReduccion /=7;        
        }else{
            
$noDivisible7 false;
        }
    }
    while(
$noDivisible11){
        if(
$numeradorReduccion%11==&& $denominadorReduccion%11==0){
        
$numeradorReduccion /=11;
        
$denominadorReduccion /=11;        
        }else{
            
$noDivisible11 false;
        }
    }
    if(
$denominadorReduccion==1){
       
$denominadorReduccion=''
    }
    return 
compact('numeradorReduccion''denominadorReduccion');
}
?>
Probablemente mi código no este muy optmizado pero estoy empezando. gracias por su tiempo.
  #2 (permalink)  
Antiguo 02/11/2011, 15:13
 
Fecha de Ingreso: noviembre-2011
Mensajes: 3
Antigüedad: 12 años, 5 meses
Puntos: 0
Respuesta: No puedo capturar elelmentos de un formulario hecho en php

les dejo el código css por si lo quieren ejecutar todo y ver la idea.

Código CSS:
Ver original
  1. #titulo{
  2.     text-align: center;
  3.     text-decoration: #f12e02;
  4.     color: #f12e02;
  5.     font-size: xx-large;
  6.     font-weight: bold;
  7.     padding-bottom: 30px;
  8. }
  9. #general {
  10.     background-color: #d1ff87;
  11.     margin-bottom: 10%;
  12.     margin-left: 15%;
  13.     margin-right: 15%;
  14.     margin-top: 3%      
  15. }
  16. #principal{
  17.     background-color: #ffd90f;    
  18.     border: 7px;
  19.     border-style: solid;
  20.     border-color: #d1b270;    
  21.     width: 100%;
  22.     height: 100%;
  23.     padding: 10px;  
  24.     border-radius: 10px;    
  25. }
  26. #encabezado{
  27.     font-size: large;
  28.     text-align: center;
  29.     float: top;
  30.     padding: 15px;      
  31.     padding-bottom: 20px;
  32. }
  33. #ejemplo{
  34.     background-color: #f5fa11;
  35.     border: 5px;
  36.     border-style: solid;
  37.     border-color: #c8c8c1;    
  38.     width: 40%;
  39.     height: 50%;
  40.     padding: 10px;          
  41.     float: left;
  42.     margin-left: 5%;
  43.     border-radius: 10px;
  44. }
  45. #ejercicio{
  46.     background-color: #f5fa11;
  47.     border: 5px;
  48.     border-style: solid;
  49.     border-color: #c8c8c1;    
  50.     width: 40%;
  51.     height: 50%;
  52.     padding: 10px;          
  53.     float: right;
  54.     margin-right: 5%;
  55.     border-radius: 10px;
  56. }
  57. #pie{
  58.     clear: both;
  59.     text-align: center;
  60.     padding: 15px;      
  61.     padding-bottom: 20px;
  62. }
  63. #ejercicioSuperior{
  64.     float: top;
  65. }
  66. ercicioInferior{
  67.     clear: both;
  68. }
  #3 (permalink)  
Antiguo 02/11/2011, 15:15
Avatar de JuJoGuAl  
Fecha de Ingreso: julio-2009
Ubicación: Venezuela
Mensajes: 754
Antigüedad: 14 años, 8 meses
Puntos: 19
Respuesta: No puedo capturar elelmentos de un formulario hecho en php

no veo el boton operar de ningun lado... haber la cosa es que queres mandar a hacer un ejercicio pero al presionar por ejemplo "+" no hace nada??? es asi?
  #4 (permalink)  
Antiguo 02/11/2011, 15:24
 
Fecha de Ingreso: noviembre-2011
Mensajes: 3
Antigüedad: 12 años, 5 meses
Puntos: 0
Respuesta: No puedo capturar elelmentos de un formulario hecho en php

no JuJoGuAl no es así, pero de todas formas gracias, si te interesa saber es que al presionar el boton de una operacion, te propone un ejercicio o realiza un ejemplo, donde propone el ejercicio es donde tenia problemas y digo tenia por que acabo de darme cuenta del error:

en la línea del código php donde imprimo el form del formulario puse action='post', creeme que pase horas buscando por que no funcionaba, no me gusta postear cosas si no estoy completamente seguro que hice lo que pude, pero éste se me pasó.

De todas formas gracias y aclaro está resuelto

Etiquetas: php+formularios
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 09:17.