Condition IF sur une variable ou une partie de la variable

biiirdy
Invité n'ayant pas de compte PHPfrance

15 sept. 2010, 10:24

Bonjour,

je pense que le titre n'est pas très clair donc je m'explique :

J'ai une liste de champs que j'affiche (récupérés d'une BDD). J'ai des Textboxes pour filtrer ces champs (pas le droit de mettre des combo). Un des champs ne peut avoir comme valeur que 'Yes' or 'No' et je dois pouvoir filtrer ce champ. Ex : Si je tape "y" dans ma textbox, seulement les champs "Yes" apparaitront.

Quelqu'un a une solution ?

Voici le code :
<?php

if ($version_status_name_textbox == 'Yes') {
		$version_status_where_clause = " AND v.id_version = a.id_current_version";
		$version_status_where_clause2 = " AND a.id_current_version IS NOT NULL";
	}
		
	else {
	
		if ($version_status_name_textbox == 'No') {
			$version_status_where_clause = " AND (v.id_version != a.id_current_version";
			$version_status_where_clause2 = " OR id_current_version IS NULL)";
		}
		
		else {
			$version_status_where_clause = "";
			$version_status_where_clause2 = "";
		}
	}	

?>

Eléphanteau du PHP | 12 Messages

15 sept. 2010, 11:53

switch ($version_status_name_textbox) {
	case 'Yes':
		$version_status_where_clause = " AND v.id_version = a.id_current_version";
		$version_status_where_clause2 = " AND a.id_current_version IS NOT NULL";
		break;

	case 'No':
		$version_status_where_clause = " AND (v.id_version != a.id_current_version";
		$version_status_where_clause2 = " OR a.id_current_version IS NULL)";
		break;

	default:
		$version_status_where_clause = "";
		$version_status_where_clause2 = "";
		break;
}

Mammouth du PHP | 1967 Messages

16 sept. 2010, 16:53

commence par définir deux listes, celle qui comprends toutes les façons acceptable de dire "yes" et toutes celles de dire "no". Gère éventuellement les majuscule / minuscule grâce à un strtolower()

Ensuite, utilise une syntaxe comme ceci
$array_yes = array();//mets ici toutes les valeurs acceptable de oui
$array_no = array();//mets ici toutes les valeurs acceptable de non
if (in_array($version_status_name_textbox,$array_oui))
{
//si c'est oui
}
elseif (in_array($version_status_name_textbox,$array_non))
{
//si c'est non
}
else
{
//Si c'est pas préciser
}
Spols
pour les fan de rubik's cube ou pour les curieux ==> le portail francophone du rubik's cube