FSB Notice : Undefined variable: match in file /home/www/9f002a3756bfd2a7224f7cfd8529973e/web/fsb/main/class/parser/parser_fsbcode.php (368)
Undefined variable avec certaines valeurs du fsbcode list :: Fire Soft Board
Nouveau sujet Forum verrouillé Imprimer Syndication RSS 2.0

Undefined variable avec certaines valeurs du fsbcode list

Equipe de support
Avatar de Soleil.R
  • Age : 31 ans
  • Messages : 291
  • Inscrit : 04 Mars 2009
  Lien vers ce message 28 Juin 2011, 17:03
  1. Type de bug : Bug sur le forum (côté PHP)
  2. Zone du forum affectée : Affichage des messages d'un sujet
  3. Priorité du bug : Basse
  4. Description : Je suis en train de travailler sur un thème et du coup, je me suis intéressé à la fonction qui parse les listes dans les messages.


    En essayant avec
      (et c'est pareil avec circle, disc, none), on a l'erreur suivante :
      FSB Notice : Undefined variable: match in file /var/www/html/KillerRabbit/main/class/parser/parser_fsbcode.php (444)

      Exemple :
      [list=square]
    1. A
    2. B
    3. C


    	public function generate_list($m)
    	{
    		$arg = $m[2];
    		$content = $m[3];
    
    		$content = preg_replace('/\[\*\]/', '</li><li>', $content);
    		$content = preg_replace('/^\s*<\/?li>/', '', $content);
    		$content = str_replace( "\n</li>", '</li>', $content . '</li>');
    
    		if ($arg)
    		{
    			switch ($arg)
    			{
    				case 'alpha' :
    				case 'a' :
    					$type = 'a';
    				break;
    
    				case '1' :
    				case 'num' :
    					$type = '1';
    				break;
    
    				case 'circle' :
    				case 'square' :
    				case 'disc' :
    				case 'none' :
    					$type = $match[1];
    				break;
    
    				default :
    					return ('<ol style="list-style-type: disc">' . $content . '</ol>');
    			}
    			return ('<ol type="' . $type . '">' . $content . '</ol>');
    		}
    		else
    		{
    			return ('<ol style="list-style-type: disc">' . $content . '</ol>');
    		}
    	}
  5. Elément de réponse : On pourrait pas faire plus simple avec un truc du genre :

    	public function generate_list($m)
    	{
    		$arg = $m[2];
    		$content = $m[3];
    
    		$content = preg_replace('/\[\*\]/', '</li><li>', $content);
    		$content = preg_replace('/^\s*<\/?li>/', '', $content);
    		$content = str_replace( "\n</li>", '</li>', $content . '</li>');
    
                    if ($arg)
                    {
                        return ('<ul style="list-style-type:'.$arg.'">' . $content . '</ul>');
                    }
                    else
                    {
                        return ('<ul>' . $content . '</ul>');
                    }
    	}



    On peut évidement conserver un switch et lister toutes les possibilités de puces Une liste des valeurs possibles ici.
    <ul> me semble plus approprié puisque par défaut, il était prévu de mettre des "disc"
    Si $arg n'est pas une valeur correcte, le navigateur utilise normalement la valeur par défaut. (dans mon cas, c'est none donc je vais rajouter une ligne css)
  6. Fichier(s) : /main/class/parser/parser_fsbcode.php
  7. Base de donnée utilisée : MySQL 5
  8. Type de serveur : Apache (généralement unix)


Mon domaine de compétences est assez éloigné de l'informatique mais si je peux vous aider, je le ferai.
 
Equipe de développement
Avatar de Arcalys
  • Age : 24 ans
  • Messages : 1045
  • Inscrit : 31 Octobre 2006
  Lien vers ce message 29 Juin 2011, 20:20
Ajouté dans le ticket #112
 
Equipe de développement
Avatar de Arcalys
  • Age : 24 ans
  • Messages : 1045
  • Inscrit : 31 Octobre 2006
  Lien vers ce message 29 Juin 2011, 21:05
Sujet archivé pour la raison suivante : Bug corrigé dans la version en développement.
 
Forum verrouillé


.