array | return $key

PHP programming forum. Ask questions or help people concerning PHP code. Don't understand a function? Need help implementing a class? Don't understand a class? Here is where to ask. Remember to do your homework!

Moderator: General Moderators

Post Reply
User avatar
ol4pr0
Forum Regular
Posts: 926
Joined: Thu Jan 08, 2004 11:22 am
Location: ecuador

array | return $key

Post by ol4pr0 »

Oke i have this huge list of differant kinds of things.
the form itself is with javascript

so the $_POST['area'] is being returned in numbers 1 - untill Oeffff

So i am trying to compare the number with the area in this case and than have it return the area belonging to that number. however it keeps on returning Administración - Secretariado.

Am i missing some ?

Code: Select all

function selected_area($area) 
{
	$areas = array (
	'1' => 'Administración - Secretariado',
	'5' => 'Ciencias',
	'10' => 'Ciencias Educacionales',
	'15' => 'Ciencias Sociales - Humanidades - Filologías',
	'20' => 'Construcción - Arquitectura',
	'25' => 'Derecho',
	'30' => 'Dirección',
	'35' => 'Económicas - Empresariales',
	'40' => 'Ingenierías',
	'45' => 'Marketing - Comunicación',
	'50' => 'Oficios Profesionales',
	'55' => 'Producción - Calidad',
	'60' => 'Profesiones Liberales - Creativas',
	'65' => 'Recursos Humanos',
	'70' => 'Sanidad - Salud - Investigación',
	'75' => 'Tecnología - Informática - Internet',
	'80' => 'Transporte - Logística - Almacén',
	'85' => 'Turismo - Restauración',
	'90' => 'Ventas - Comercial');
	ksort ($areas);
	foreach ($areas as $keys => $area)
	{
		return $area;
	}
}
echo selected_area($_POST['area']);
rehfeld
Forum Regular
Posts: 741
Joined: Mon Oct 18, 2004 8:14 pm

Post by rehfeld »

you can only return once inside a function. when you return, the function stops immediately.

since you never actually did any checking if the area was == to the area you wanted, it was just returning the first area in the loop.

try this

Code: Select all

function selected_area($area) 
{
    $areas = array (
    '1' => 'Administración - Secretariado',
    '5' => 'Ciencias',
    '10' => 'Ciencias Educacionales',
    '15' => 'Ciencias Sociales - Humanidades - Filologías',
    '20' => 'Construcción - Arquitectura',
    '25' => 'Derecho',
    '30' => 'Dirección',
    '35' => 'Económicas - Empresariales',
    '40' => 'Ingenierías',
    '45' => 'Marketing - Comunicación',
    '50' => 'Oficios Profesionales',
    '55' => 'Producción - Calidad',
    '60' => 'Profesiones Liberales - Creativas',
    '65' => 'Recursos Humanos',
    '70' => 'Sanidad - Salud - Investigación',
    '75' => 'Tecnología - Informática - Internet',
    '80' => 'Transporte - Logística - Almacén',
    '85' => 'Turismo - Restauración',
    '90' => 'Ventas - Comercial');
    ksort ($areas);

    if (isSet($areas[$area])) {
        return $areas[$area];
    } else {
         return false;
    }
}

// this would have worked too


foreach ($areas as $key => $value) {
    if ($area == $key) {
        return $value;
    }
}
User avatar
ol4pr0
Forum Regular
Posts: 926
Joined: Thu Jan 08, 2004 11:22 am
Location: ecuador

Post by ol4pr0 »

I see what u mean .

Thanks alot.
Post Reply