de que modo que php reconoce los eventos?

Iniciado por Sauruxum, 4 Agosto 2010, 01:02 AM

0 Miembros y 1 Visitante están viendo este tema.

Sauruxum

Buenas a todos.
Desde hace 4 dias que me he iniciado en PHP y a hacer cosas por el momento simples combinando php y sql.
Como sea me surge una duda acerca del modo que php reconoce los eventos.
Es decir si yo tengo una funcion del tipo ( uso pseudocodigo ):

if a=1
hacer esto;
else if a=2
hacer esto_otro;


Y en otra parte del documento pongo dos botones, de modo que ajusten la variable a en "1 o 2", en php reconoce automaticamente el cambio de valor de la variable y ejecuta la condicion o debo hacer forzadamente una funcion y llamarla cada vez que cambio el valor de la variable?

El problema en si es con un codigo mas complejo ( aunque no logro hacerlo funcionar de ninguna de las dos maneras, pero ese ya es mi problema  :silbar: ) como sea quisiera saber esto ya que seria una ayuda poder hacerlo funcionar de la primera manera.

Saludos

Shell Root

#1
You can generate the code or you can perform a function, any option is correct and you have the same result.

The function you call anywhere, the only thing that changes is the value. As the form is refreshed when the value of the variable changes (I use the GET method), so every time you change the value of the variable, the function is executed.

For example:
Código (php) [Seleccionar]
<?php
   
function fcheck($sParameter){
      
# Function for check value of variables

      
if($sParameter == 'a'){
            return 
'The value of the variable is: <b>a</b>';
      }elseif(
$sParameter == 'b'){
         return 
'The value of the variable is: <b>b</b>';
      }else{
         return 
'The value of the variable is: <b><i>NULL</i></b>';
      }
   }
?>

<html>
<head></head>
<body>
<center><a href='index.php?Parameter=a'>a</a> | <a href='index.php?Parameter=b'>b</a></center>
<br /><br />
<?php
   
echo fcheck($_GET['Parameter']);
?>

</body>
</html>


Displays the code you have. This will help you correct it.
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

Dznp

#2
No, no necesitas hacer una función para establecer un if...  :silbar:

Ejemplo...
Código (php) [Seleccionar]

<?php
$algo
=$_GET[algo];
if(
$algo=='borrar'){
$delete=mysql_query("delete * from usuarios");
if(
$delete){
echo 
'Todos los usuarios borrados';
}
} elseif(
$algo=='select'){
$select=mysql_query("select * from usuarios");
if(
$select){
echo 
'Consulta ejecutada';




Ahi te hice un ejemplo con consultas así te guias un poco más.
Igual, por suerte PHP tiene una función que se llama switch()(http://php.net/manual/es/control-structures.switch.php)

Codigo usando switch

Código (php) [Seleccionar]

<?php
switch($_GET[algo]){
case 
borrar:
$delete=mysql_query("delete * from usuarios");
if(
$delete){
echo 
'Todos los usuarios borrados';
}
break;
case 
select:
$select=mysql_query("select * from usuarios");
if(
$select){
echo 
'Consulta ejecutada';
}
break;
default: 
echo 
'Esta seria la página "default", que se usaria cuando no hay un GET  :) ';
break;
}


Espero que hayas entendido, cualquier duda mandame un mensaje privado:)

Shell Root

@Dznp in the first code, use the elseif clause. In the second not to close the switch.

The functions are used if required to use the code on various parts of the application. Depends on what you want to do is select the method to use.
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

Sauruxum

#4
Yo creo que fue una satira a mi incorrecto espanol xD. Ma io non mi faccio fregare cosi facilmente, sono sei anni che non lo parlo.
とにかく ありがとうございます

Aunque debo decir que Shell Root fue el que entendio bien mi pregunta xD
Muchas gracias por resolverme la duda.

Saludos

P.d. muy interesante tu blog Shell Root, sobre todo lo de los hashes, encontraria interesante si publicaras algo sobre el ofuscamiento de codigo que en google solo encuentro programas comerciales o paginas que lo hacen...

[L]ord [R]NA

Cita de: Shell Root en  4 Agosto 2010, 01:14 AM
You can generate the code or you can perform a function, any option is correct and you have the same result.

The function you call anywhere, the only thing that changes is the value. As the form is refreshed when the value of the variable changes (I use the GET method), so every time you change the value of the variable, the function is executed.

For example:
Código (php) [Seleccionar]
<?php
   
function fcheck($sParameter){
      
# Function for check value of variables

      
if($sParameter == 'a'){
            return 
'The value of the variable is: <b>a</b>';
      }elseif(
$sParameter == 'b'){
         return 
'The value of the variable is: <b>b</b>';
      }else{
         return 
'The value of the variable is: <b><i>NULL</i></b>';
      }
   }
?>

<html>
<head></head>
<body>
<center><a href='index.php?Parameter=a'>a</a> | <a href='index.php?Parameter=b'>b</a></center>
<br /><br />
<?php
   
echo fcheck($_GET['Parameter']);
?>

</body>
</html>


Displays the code you have. This will help you correct it.

Can you stop it? this isn't a english forum.