Foros del Web » Programando para Internet » PHP »

como comprobar si la variable enviada es igual a un elemento de un array?

Estas en el tema de como comprobar si la variable enviada es igual a un elemento de un array? en el foro de PHP en Foros del Web. tengo un script q lee elementos de carpeta. junto a un formulario y una funcion, el pekeño script me sirve para crear cookies dependiendo de ...
  #1 (permalink)  
Antiguo 06/04/2003, 04:08
Avatar de ArrauKano  
Fecha de Ingreso: noviembre-2002
Ubicación: Santiago
Mensajes: 664
Antigüedad: 15 años, 1 mes
Puntos: 4
como comprobar si la variable enviada es igual a un elemento de un array?

tengo un script q lee elementos de carpeta.
junto a un formulario y una funcion, el pekeño script me sirve para crear cookies dependiendo de los elementos de las carpetas y leerlas.

el problema es q este formulario usa GET (pk tb usa variables desde URL), entonces como puedo hacer para leer el contenido de la carpeta, guardarlo en un array y luego comprobar si el valor de variable enviada es igual a uno de los elementos de la carpeta?

EJ: si la carpeta me devuelve estos valores

CARPETA1
CARPETA2
CARPETA3

como puedo hacer para comprobar q el usuario no envie algo como CARPETA4 ?
__________________
Blog | Tecnosquad
  #2 (permalink)  
Antiguo 06/04/2003, 06:09
 
Fecha de Ingreso: agosto-2002
Ubicación: Colón - Entre Rios - Argentina
Mensajes: 647
Antigüedad: 15 años, 4 meses
Puntos: 8
Debes usar in_array();

http://www.php.net/in_array
  #3 (permalink)  
Antiguo 06/04/2003, 17:16
Avatar de ArrauKano  
Fecha de Ingreso: noviembre-2002
Ubicación: Santiago
Mensajes: 664
Antigüedad: 15 años, 1 mes
Puntos: 4
GRacias, ese me servira para el comprobador


con ete codigo imprimo los objetos de una carpeta
en un formulario

Código PHP:
<?php
require('config.php');
$i ;
echo
"<form action=\"entrar.php\" method=\"get\" >Selecciona un nuevo Tema: <select name=\"entrar\" onchange=\"window.location=('entrar.php?entrar='+this.options[this.selectedIndex].value)\"><option value=\"\">Escoge un tema</option>";
if (
$tpldir opendir("$templates")) {
    while (
$tema readdir($tpldir)) { 
        if (!
is_file($tema) && $tema != "." && $tema != "..")
        {
            echo
"<option value=\"$tema\"> "; print $i++; echo") $tema</option>"
        }
    }
echo
"</select></form>";
closedir($tpldir); 
echo
"$template";
}
?>
como se hace para q los guarde en un array?
__________________
Blog | Tecnosquad
  #4 (permalink)  
Antiguo 06/04/2003, 17:38
Avatar de fmmeson  
Fecha de Ingreso: enero-2002
Ubicación: Tucuman
Mensajes: 401
Antigüedad: 15 años, 10 meses
Puntos: 2
prueba asi:
Código PHP:
echo "<select name=\"seleccione_tema[$tema]\"><option value=\"tema1\" selected>tema1</option><option value=\"tema2\">tema2</option><option value=\"tema3\">tema3</option> 
y despues lo recoger con un bucle foreach

Código PHP:
foreach($_POST['seleccione_tema'] as $tema => $tema_seleccionado) {
echo 
$tema_seleccionado ."<br>";

puede tener errores lo escribi al vuelo.

Saludos!!
  #5 (permalink)  
Antiguo 06/04/2003, 17:41
Avatar de fmmeson  
Fecha de Ingreso: enero-2002
Ubicación: Tucuman
Mensajes: 401
Antigüedad: 15 años, 10 meses
Puntos: 2
perdon olvide cerrar el select...quedaria asi:
Código PHP:
</select
saludos
  #6 (permalink)  
Antiguo 08/04/2003, 16:50
Avatar de ArrauKano  
Fecha de Ingreso: noviembre-2002
Ubicación: Santiago
Mensajes: 664
Antigüedad: 15 años, 1 mes
Puntos: 4
la cosa es como gusrdo el resultado del while q tengo arriba en un array ??
__________________
Blog | Tecnosquad
  #7 (permalink)  
Antiguo 08/04/2003, 17:12
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Código PHP:
if ($tpldir opendir("$templates")) {
    while (
$tema readdir($tpldir)) { 
        if (!
is_file($tema) && $tema != "." && $tema != ".."){
             
$array_temas[]=$tema;
        }
    } 
Así de simple . .espero que lo comprendas .. sino, repasa el tema de "arrays" en el manual de PHP.

El $array_temas ahí tienes tu array ...

Usa un bucle foreach() para recorrerla y componer si quieres tu <select> q tenias ahí donde quieras presentarlo o cuantas veces quieras ...

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #8 (permalink)  
Antiguo 09/04/2003, 18:52
Avatar de ArrauKano  
Fecha de Ingreso: noviembre-2002
Ubicación: Santiago
Mensajes: 664
Antigüedad: 15 años, 1 mes
Puntos: 4
a!
si entendi, usaste el autonumerico.
ahora pruebo, gracias, es q estaba pensando acerca de arrays convencionales de este tipo:
Código PHP:
$a = array('a''b''c'); 
__________________
Blog | Tecnosquad
  #9 (permalink)  
Antiguo 10/04/2003, 08:12
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Es lo mismo definir un array:

Código PHP:
$a=array("a","b","c"); 
que

Código PHP:
$a[0]="a";
$a[1]="b";
$a[3]="b"
Para definir un array con valores "contantes" viene bien el primer método ..Pero para definir el array "dinamicacmente" va mejor el segundo.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 11:09.