PHP - Entra en el metodo al recargar la pagina,si llamarlo.

   
Vista:

Entra en el metodo al recargar la pagina,si llamarlo.

Publicado por Victor (193 intervenciones) el 19/01/2015 10:17:02
Buenos dias.

Tengo este control:
1
2
3
<a href="javascript:agregarCiclo(<?php echo $valorEntrada?>)">
    <input type="button" title="Guardar" value="+Ciclo">
</a>

Que llama a esta funcion javascript:
1
2
3
4
5
6
7
//Funcion para agragar un ciclo
function agregarCiclo(id)
{
    alert("Has tocado el boton");
    document.frmAnimal.action="interiorAnimal.php?accion=agregarCiclo&id="+id+"&valor="+id;
    document.frmAnimal.submit();
}

El cual llama a un metodo que realiza la correspondiente tarea filtrado por un if:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
if($accion="agregarCiclo")
{
    echo "<br>Dentro de agregarCiclo";
    $animal = $_GET['valor'];
//    echo "<br>Animal vale=>".$animal;
//    echo "<br>ID vale=>".$$id;
    $conexion=conectarBD();
    $totalCilos=0;
    $query="select * from ciclo where numCrotalMarrano='".$animal."';";
    $consulta=$conexion->query($query);
    if($consulta==null)
    {
        $ciclosActuales=0;
    }else
    {
        $ciclosActuales = $consulta->num_rows;
    }
    $totalCilos=$ciclosActuales+1;
//    echo "<br>Total de ciclos vale=>".$totalCilos;
    $query="INSERT INTO ciclo values ('','".$animal."','".$totalCilos."','','','','','','','','','','','','','','','','','','','','')";
    $consulta = $conexion->query($query);
    if(!$consulta)
    {
        echo "No a encontrado dats.";
    }else
    {
        $query="update marrano SET numCiclos='".$totalCilos."' where numCrotalMarrano='".$animal."';";
        $consulta=$conexion->query($query);
    }
    $conexion->close();
    echo "<br>El id dentro de agregarCiclo vale=>".$animal;
    $_GET['valor']=$animal;
}

Pero antes de eso,de que ejecute la accion dependiendo del valor de $accion uso este if para distinguir que accion debe ejecutarse:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$fechaActual=date('Y-m-d');
// Recupera variables
$id = "";
$accion = "";
 
if($_POST)
{
    if($_GET['id']!="")
    {
        $id = $_GET['id'];
    }
    $accion = $_GET['accion'];
//    echo"<br>El post esta hecho";
    echo"<br> Accion vale=>".$accion;
}

Bien pues el tema es el siguiente cada vez que recargo la pagina se ejecuta el metodo agregarCiclo sin pulsar el input que llama al javascript etc.
Y para colmo el echo "echo"<br> Accion vale=>".$accion;" no muestra nada pero el echo que hay despues de if($accion=="agregarCiclo") echo "<br>Dentro de agregarCiclo"; si se me muestra por pantalla.

Alguien entiendo por que pasa eso?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Entra en el metodo al recargar la pagina,si llamarlo.

Publicado por Victor (193 intervenciones) el 19/01/2015 11:08:46
Buenas.

Falsa alarma,la cagué cuando puse if($accion="agregarCiclo") en vez de poner if($accion=="agregarCiclo");

La que se puede liar por un signo :P

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar