Page 1 sur 1

deux problemes pour des retour de fonctions

Posté : 25 janv. 2008, 03:52
par Invité
bonsoir

voila j ai crée deux fonctions pour automatiser certaines taches..

la premiere fonction

j essaie de reaffecter une variable au resultat pour enlever les accents
j en ai besoin dans une url
if(Cat($Libelle) =="Société") Cat($Libelle)="Societe";

cela me renvoie ce message
Fatal error: Can't use function return value in write context in ...
y a t il un autre moyen pour reaffecter une valeur au resultat d une fonction...

la deuxieme fonction

c est le resultat d une boucle
si je fais un echo ca me casse la mise en page et un return ben je sais pas trop comment le mettre.
function Competence($Val,$Affichage) {
	if($Val!='')
		{
		$ReqC = "SELECT IdComp,LibelleComp FROM competences";
		$CursC = mysql_query($ReqC);
		$NbC = mysql_numrows($CursC);	
		$TabCompetence = explode("-", $Val);
			for ($k = 0;$k < $NbC ;$k++) 
				{	
					$IdC = mysql_result($CursC, $k, "IdComp");
					$LibelleC = mysql_result($CursC, $k, "LibelleComp");
					if (in_array ($IdC, $TabCompetence))
					{
						echo $LibelleC.' - ';
					}
				}	
		}
	else 
	{
	//oui
	if($Affichage=='1'){echo N/A;}}
	//sinon on ne fait rien
}

merci pour vos aides :D

Posté : 25 janv. 2008, 10:42
par Maitrepylos
Bonjour,

Opérateur ternaire

Code : Tout sélectionner

$Lib = (Cat($Libelle) =="Société")?"Societe":Cat($Libelle) ;

Posté : 25 janv. 2008, 14:25
par Invité
merci pour la 1ere fonction :D

par contre pour la deuxieme fdonction, je ne comprends toujors pas pour quoi un echo casse la mise en page ??

:?

Posté : 25 janv. 2008, 14:34
par Maitrepylos
Comment faites vous pour appeler la function Competence?

Posté : 25 janv. 2008, 14:45
par Invité
je viens de l isoler et ca fonctionne maintenant
:?:
echo'<p class="CompOffre">';	
echo Competence($BddCompetence,0);
echo'</p>'; 
par contre si je fais
echo'<p class="CompOffre">'.Competence($BddCompetence,0).'</p>';
le resultat sort du <p> et la class n est plus attribué?

merci pour l aide en tout cas.