Foros del Web » Programando para Internet » PHP »

Uso de condicionales

Estas en el tema de Uso de condicionales en el foro de PHP en Foros del Web. Hola nuevamente, tengo una duda con el condicional if... eh leido el manual php y eh echo algunos ejercicios pero al llevarlo a la practica ...
  #1 (permalink)  
Antiguo 19/03/2012, 06:41
Avatar de zreep  
Fecha de Ingreso: octubre-2009
Ubicación: Argentina
Mensajes: 534
Antigüedad: 15 años, 1 mes
Puntos: 12
Uso de condicionales

Hola nuevamente, tengo una duda con el condicional if... eh leido el manual php y eh echo algunos ejercicios pero al llevarlo a la practica en algo mas complejo se me hace una nube...
entiendo el concepto pero me cuesta llevarlo bien a cabo...

Código PHP:
<form action="" method="post">
<?php
$buscar
=$_GET['buscar'];
?>
<input type="text" name="buscar" value="<?php echo($buscar);?>">
<input type="submit" class="btnotte" value="buscar">
</form>

<?php
require_once 'conn.php';

$buscar=$_POST['buscar'];
$con="select usuario,nombre,apellido from usuarios where usuario like '%$buscar%'";                 
                
$resultado=mysql_query($con);
$cant=mysql_num_rows($resultado);
        
while(
$fila=mysql_fetch_array($resultado)){
?>
<?php 
echo ($fila['usuario']);?><br>
<?php echo ($fila['nombre']);?><br>
mas: <?php echo ($fila['apellido']);?>    
<?php
}
mysql_close();
?>
Espero me ayude a entenderlo mejor... Gracias
__________________
Zreep
  #2 (permalink)  
Antiguo 19/03/2012, 06:48
Avatar de CesarHC  
Fecha de Ingreso: junio-2011
Ubicación: localhost
Mensajes: 566
Antigüedad: 13 años, 5 meses
Puntos: 56
Respuesta: Uso de condicionales

Te orientaremos pero , aqui no hay ningun if XD explicanos que quieres hacer.
__________________
Solo la práctica no te traicionara ¡¡¡¡¡¡

Seguir el camino tu debes PHP The Right Way.
  #3 (permalink)  
Antiguo 19/03/2012, 06:50
Avatar de h2swider  
Fecha de Ingreso: julio-2007
Ubicación: Ciudad de Buenos Aires
Mensajes: 932
Antigüedad: 17 años, 3 meses
Puntos: 194
Respuesta: Uso de condicionales

Dejame adivinar la pregunta.... nop, no pude adivinar.
__________________
Codifica siempre como si la persona que finalmente mantedra tu código sea un psicópata violento que sabe donde vives
  #4 (permalink)  
Antiguo 19/03/2012, 06:58
Avatar de zreep  
Fecha de Ingreso: octubre-2009
Ubicación: Argentina
Mensajes: 534
Antigüedad: 15 años, 1 mes
Puntos: 12
Respuesta: Uso de condicionales

Je, si perdon... lo que queria hacer es arreglar esto... de que forma? cuando pongo un nombre me lo trae pero si no pongo nada me deja el ultimo nombre que busque... solo queria poner que si no busco nada este la pagina en blanco... es simple lo que digo, pero para mi es muy tormentoso... estoy desde temprano leyendo el manual en php.net pero no logre hacer nada....
__________________
Zreep
  #5 (permalink)  
Antiguo 19/03/2012, 07:10
Avatar de SirDuque  
Fecha de Ingreso: febrero-2009
Ubicación: Paso del Rey, Buenos Aires, Argentina
Mensajes: 975
Antigüedad: 15 años, 9 meses
Puntos: 89
Respuesta: Uso de condicionales

Código PHP:
<?php
if((isset($_POST) && $_POST['buscar']!='') OR (isset($_GET) && $_GET['buscar']!='')){
//tu codigo.
}

Preguntas si la variable buscar es INDISTINTA a nada.

¿como funciona?
por lo que vi, recibis la variable por GET o POST entonces analicemos

Para que se cumpla tu codigo necesitamos que uno de los dos parentecis tiren TRUE
cada parenteci tiene dos condiciones.
el primero:
-La variable POST esta seteada ( esta se setea automatica mente cuando se envia un formulario por post).
-Si hay variables enviadas por POST, la variable "buscar" contiene algo?.

Si las dos condiciones se dan automaticamente se envia un TRUE.

Si no... pasamos al OR.

-La variable GET esta seteada ( esta se setea automatica mente cuando la url tiene variables: pagina.php?varible1=hola&variable2=hola).
-Si hay variables enviadas por GET, la variable "buscar" contiene algo?.

Si las dos condiciones se dan automaticamente se envia un TRUE.

Caso contrario tendriamos dos FALSE, y no se procesaria tu codigo.

Suerte!
__________________
Mono programando!
twitter.com/eguimariano
  #6 (permalink)  
Antiguo 19/03/2012, 07:13
Avatar de h2swider  
Fecha de Ingreso: julio-2007
Ubicación: Ciudad de Buenos Aires
Mensajes: 932
Antigüedad: 17 años, 3 meses
Puntos: 194
Respuesta: Uso de condicionales

Algo así te debería servir;

Código PHP:
Ver original
  1. <?php
  2. require_once 'conn.php';
  3.  
  4. $buscar = isset($_POST['buscar']) ? $_POST['buscar'] : null;
  5.  
  6. $con = "select usuario,nombre,apellido from usuarios where usuario like '%$buscar%'";
  7.  
  8. $resultado = mysql_query($con);
  9. $cant = mysql_num_rows($resultado);
  10.  
  11. while ($fila = mysql_fetch_array($resultado)) {
  12.     echo $fila['usuario'];
  13.     ?><br />
  14.     <?php echo $fila['nombre']; ?>
  15.     <br />
  16.     mas: <?php echo $fila['apellido']; ?>    
  17.     <?php
  18. }
  19. ?>
  20.  
  21. <form action="" method="post">
  22.     <input type="text" name="buscar" value="<?php echo$buscar; ?>">
  23.     <input type="submit" class="btnotte" value="buscar">
  24. </form>
__________________
Codifica siempre como si la persona que finalmente mantedra tu código sea un psicópata violento que sabe donde vives
  #7 (permalink)  
Antiguo 19/03/2012, 07:28
Avatar de zreep  
Fecha de Ingreso: octubre-2009
Ubicación: Argentina
Mensajes: 534
Antigüedad: 15 años, 1 mes
Puntos: 12
Respuesta: Uso de condicionales

Cita:
Iniciado por SirDuque Ver Mensaje
Código PHP:
<?php
if((isset($_POST) && $_POST['buscar']!='') OR (isset($_GET) && $_GET['buscar']!='')){
//tu codigo.
}

Preguntas si la variable buscar es INDISTINTA a nada.

¿como funciona?
por lo que vi, recibis la variable por GET o POST entonces analicemos

Para que se cumpla tu codigo necesitamos que uno de los dos parentecis tiren TRUE
cada parenteci tiene dos condiciones.
el primero:
-La variable POST esta seteada ( esta se setea automatica mente cuando se envia un formulario por post).
-Si hay variables enviadas por POST, la variable "buscar" contiene algo?.

Si las dos condiciones se dan automaticamente se envia un TRUE.

Si no... pasamos al OR.

-La variable GET esta seteada ( esta se setea automatica mente cuando la url tiene variables: pagina.php?varible1=hola&variable2=hola).
-Si hay variables enviadas por GET, la variable "buscar" contiene algo?.

Si las dos condiciones se dan automaticamente se envia un TRUE.

Caso contrario tendriamos dos FALSE, y no se procesaria tu codigo.

Suerte!
Gracias h2swider y has sido muy amable con la respuesta. Por otro lado, entendi en concepto, pero como se ubica? creo que mi problema es eso... antes del while y en medio de que... lo que no entiendo ahora es como se ubica...

el bucle while, va despues? o como se tiene que usar bien el condicional if?
__________________
Zreep
  #8 (permalink)  
Antiguo 19/03/2012, 07:47
Avatar de h2swider  
Fecha de Ingreso: julio-2007
Ubicación: Ciudad de Buenos Aires
Mensajes: 932
Antigüedad: 17 años, 3 meses
Puntos: 194
Respuesta: Uso de condicionales

El mayor problema que tenias es que siempre el form debe ir debajo del código php que recibe los valores.
__________________
Codifica siempre como si la persona que finalmente mantedra tu código sea un psicópata violento que sabe donde vives
  #9 (permalink)  
Antiguo 19/03/2012, 08:19
Avatar de zreep  
Fecha de Ingreso: octubre-2009
Ubicación: Argentina
Mensajes: 534
Antigüedad: 15 años, 1 mes
Puntos: 12
Respuesta: Uso de condicionales

ya lo modifique, gracias...pero el resto? como se tiene que desarrollar? bah, no pido que lo hagan sino que me orienten!

Código PHP:
<?php
if (alfo) {
  
codigo //

$con="SELECT * FROM base WHERE titulo like '%$buscar%'";

$resultado=mysql_query($con);
$cant=mysql_num_rows($resultado);
}
...
?>
y el while? va despues antes?
__________________
Zreep
  #10 (permalink)  
Antiguo 19/03/2012, 08:30
Avatar de h2swider  
Fecha de Ingreso: julio-2007
Ubicación: Ciudad de Buenos Aires
Mensajes: 932
Antigüedad: 17 años, 3 meses
Puntos: 194
Respuesta: Uso de condicionales

perdón, en el código que te mostré puse un if, pero que se ve diferente

Código PHP:
Ver original
  1. if( isset($_POST['buscar'])) { // pregunta si existe buscar
  2.     $buscar = $_POST['buscar']; // en caso de que exista guardo el valor en $buscar
  3. } else {
  4.     $buscar = null; //en caso contrario le guardo null
  5. }
todas estas 4 lineas las tienes simplificadas en

Código PHP:
Ver original
  1. $buscar = isset($_POST['buscar']) ? $_POST['buscar'] : null;
__________________
Codifica siempre como si la persona que finalmente mantedra tu código sea un psicópata violento que sabe donde vives
  #11 (permalink)  
Antiguo 19/03/2012, 09:16
Avatar de SirDuque  
Fecha de Ingreso: febrero-2009
Ubicación: Paso del Rey, Buenos Aires, Argentina
Mensajes: 975
Antigüedad: 15 años, 9 meses
Puntos: 89
Respuesta: Uso de condicionales

El condicional va antes del codigo que quieres que se cumpla.

Por ejemplo tenes un query el cual solo queres que se ejecute SI se envia algo en la variable $buscar, caso contrario no muestre nada. Entonces para que realizar el query el while los echo, si no envio nada. En respuesta a lo que preguntas.

en tu caso:
va la condicion: el IF
dentro del if, el query, while, echo.
__________________
Mono programando!
twitter.com/eguimariano

Etiquetas: condicionales, mysql, sql, usuarios
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 21:52.