Page 1 sur 1

Une question simple, pour une réponse compliquée

Posté : 02 mai 2012, 17:47
par Torrix
Bonjour à la communauté !

Je ne suis pas les plus doués en PHP, mais j'ai besoin de votre aide.

Voici mon bout de code
			
<?php echo "<b>".@$strtitle."</b>"; 
			if (isset($this->fDisplay[6]))
			{	
				foreach($this->fDisplay[6] as $field)
				{
					echo $this->field->showFieldValue($this->content,$field);
				}
			} ?>
Dans mon echo finale, j'aimerais que la première valeur soit en gras, et que la deuxième soit en normal.
Si je me fais mal comprendre, j'ai essayé comme ça :
			<?php echo "<b>".@$strtitle."</b>"; 
			if (isset($this->fDisplay[6]))
			{	
				foreach($this->fDisplay[6] as $field)
				{
					echo "<b>".@$this->field->showFieldValue."</b>".($this->content,$field);
				}
			} ?>
Cette syntaxe ne fonctionne pas, et je n'en trouve pas une de correcte ... merci d'avance à la communauté !

Re: Une question simple, pour une réponse compliquée

Posté : 02 mai 2012, 18:09
par xTG
C'est une fonction qui retourne une chaîne de caractères, donc on casse pas le nom d'une fonction comme ça. ;)
Il y a un séparateur entre tes deux éléments ? Genre deux points ou un égal ?

Re: Une question simple, pour une réponse compliquée

Posté : 03 mai 2012, 09:08
par Torrixx
Oui, si il devait être écrit exemple salut, ce serait :

Exemple: salut

Comme vous l'avez compris, je souhaite obtenir

Exemple: salut


Encore merci de votre aide !

Re: Une question simple, pour une réponse compliquée

Posté : 03 mai 2012, 12:00
par xTG
Regardes du côté de explode dans ce cas. ;)
$chaine = 'Exemple : Salut !';
$chaine_explode = explode(':',$chaine); // on explose la chaine avec : comme séparateur
if( count($chaine_explode) >= 2 ){ // on vérifie qu'on obtient bien au moins deux éléments
  $chaine_explode[0] = '<b>' . $chaine_explode[0] . '</b>'; // on met en gras le premier
  $chaine = implode(':', $chaine_explode); // on recréé la chaine
}
echo $chaine:

Re: Une question simple, pour une réponse compliquée

Posté : 03 mai 2012, 15:46
par Totorrix
Oh pas bête, je ne savais pas que l'on pouvait la jouer comme ça ! je te tiens au courant, merci infiniment !

Re: Une question simple, pour une réponse compliquée

Posté : 04 mai 2012, 11:40
par explodestrange
Re bonjour, mes explodes sont étranges, et ça ne marche pas :( je déprime.
	//Get the active menu item
	$menu =& JSite::getMenu();
	$item =& $menu->getActive();
	
	$nbsegments = count($segments); 

	if (in_array(JText::_('ADSMANAGER_SEF_RESULT'),$segments))
	{
		$vars["view"] = "result";

	}
	else if (in_array(JText::_('ADSMANAGER_SEF_SEARCH'),$segments))
	{
		$vars["view"] = "search";
		$catid = explode(':' , $segments[0] );
	    $vars['catid'] = (int) $catid[0];
	    $vars['task'] = "display";

	}

	else if (in_array(JText::_('ADSMANAGER_SEF_EDIT'),$segments))
	{
		$vars["view"] = "edit";
		$catid = explode(':', $segments[0] );
	    $vars['catid'] = (int) $catid[0];
	    $id = explode(':', $segments[1] );
	    $vars['id'] = (int) $id[0];
	    $vars['task'] = "write";

	}
	else if (in_array(JText::_('ADSMANAGER_SEF_WRITE'),$segments))
	{
		$vars["view"] = "edit";
	    $vars['task'] = "write";
	    $catid = explode(':', $segments[0] );
	    $vars['catid'] = (int) $catid[0];

	}
	else if (in_array(JText::_('ADSMANAGER_SEF_DELETE'),$segments))
	{
		$vars["view"] = "edit";
		$catid = explode(':', $segments[0] );
	    $vars['catid'] = (int) $catid[0];
	    $id = explode(':', $segments[1] );
	    $vars['id'] = (int) $id[0];
	    $vars['task'] = "delete";

	}
	else if (in_array(JText::_('ADSMANAGER_SEF_EXPIRATION'),$segments))
	{
		$vars["view"] = "expiration";
	    $id = explode( ':', $segments[0] );
	    $vars['id'] = (int) $id[0];
	    $vars['task'] = "display";

		
	}
	else if (in_array(JText::_('ADSMANAGER_SEF_RULES'),$segments))
	{
		$vars["view"] = "rules";

	}
	else if (in_array(JText::_('ADSMANAGER_SEF_PROFILE'),$segments))
	{
		$vars["view"] = "profile";

	}
	else if (in_array(JText::_('ADSMANAGER_SEF_ALL_ADS'),$segments))
	{
		$vars["view"] = "list";		

	}
	else if (in_array(JText::_('ADSMANAGER_SEF_LOGIN'),$segments))
	{
		$vars["view"] = "login";

	}
	else if (in_array(JText::_('ADSMANAGER_SEF_CONTACT'),$segments))
	{
		$vars["view"] = "message";
		$catid = explode(':', $segments[0] );
	    $vars['catid'] = (int) $catid[0];
	    $id = explode(':', $segments[1] );
	    $vars['contentid'] = (int) $id[0];
	    $vars['task'] = "display";
		
	}
	else if (in_array(JText::_('ADSMANAGER_SEF_USER'),$segments))
	{
		$userid = explode( ':', $segments[1] );
		$vars['user'] = (int) $userid[0];
		$vars['task'] = "display";
		$vars['view'] = "list";

		
	}
	else
	{
		if ($nbsegments == 2)
		{
			$catid = explode( ':', $segments[0] );
		    $vars['catid'] = (int) $catid[0];
		    $id = explode( ':', $segments[1] );
		    $vars['id'] = (int) $id[0];
		    $vars["view"] = "details";

		}
		else
		{
			$catid = explode( ':', $segments[0] );
	    	$vars['catid'] = (int) $catid[0];
	    	$vars["view"] = "list";

		}
		$vars['task'] = "display";

	}

Re: Une question simple, pour une réponse compliquée

Posté : 08 mai 2012, 16:36
par Ryle
Tes explodes n'ont rien d'étranges, et s'ils ne marchent pas, c'est parce qu'ils n'ont pas de jambes :p

Maintenant si tu nous dis ce que tu veux faire, ce que ça fait, ce que ça devrait faire (et les éventuels messages d'erreur que tu obtiens), on pourra plus facilement essayer de t'aider à le faire fonctionner ;)