IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

interprétation de code [Débutant(e)]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 17
    Par défaut interprétation de code
    bonjour je suis debutante dans le php(je connais un peu mieux c#)
    si quelqu'un peut m'aider a interpreter ce bout de code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
    function show_me_the_way_clic($root, $url_r = true)
    {
    	global $lang;
    	$title_chemin = '';
    	// Instanciation d'un gestionnaire d'objet:category
    	$cm =& get_manager("category");
    	$re =& MyRewriteEngine::getInstance();
     
    	while ($root!= 0)
    	{
    		//Les critères sont 'id' et '$root'. La table concernée est 'category'. 
    		$criteria = new Criteria("id",$root);
    		//La limite en nombre de lignes est fixée à 1
    		$criteria->setLimit(1);
    		$cols = array('id','name','root');
    		// Recuperation d'attributs avec la methode get()
    		$category =& $cm->get($root,$cols);
    		// recupération de l'attribut 'root'
    		$root = $category->getVar('root');
     
    		$title_chemin = ' > <a href="'.$re->buildUrl('category',array('name' => $category->getVar('name'), 'id' => $category->getVar('id'))).'">'.$category->getVar('name').'</a>'.$title_chemin;
    	}                                                                            // recupération de l'attribut 'name'               // recupération de l'attribut 'id'                                               // recupération de l'attribut 'name' 
     
    	$title_chemin = "<a href='./' title='".$lang['home']."'>".$lang['home'].'</a>'.$title_chemin;
     
    	return $title_chemin;
    }
    merci

  2. #2
    Membre habitué
    Inscrit en
    Août 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 9
    Par défaut
    A priori, je dirais que dans ce code , au début, la variable $title_chemin est nulle.
    Ensuite, tant la variable $root est différente de 0, la variable $title_chemin prend pour valeur une url qui est conçu en fonction de la categorie, de l'identifiant et de l'id de l'utilisateur.

    Ah oui, quand tu sors de ta boucle, la valeur de la variable $title_chemin prend comme valeur 'Home', donc a priori, cela te renverra sur la page d'accueil.

    PS: je suis débutant en PHP moi aussi^^.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 17
    Par défaut
    merci
    je comprends un peu plus surtout le 'home'
    en fait j'aurais peu etre du preciser ce que me renvoie la fonction:
    elle renvoie une variable:"title_chemin" qui contient le chemin de la categorie.
    le site:
    http://www.discount-promo.net/
    lorsque que l'on clique sur un categorie ,la page s'ouvre avec son chemin en titre.
    exemple:Accueil>Assurance
    de meme si on clic sur une sous categorie:
    Accueil>Assurance>Assurance Voiture
    mon probleme c'est que je ne veux que le nom de ma page dans des balises h1
    Accueil > <h1>Assurance </h1> ou
    Accueil > Assurance > <h1>Assurance Voiture</h1>
    et comme pour le moment dans mon code j'ai:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <{if isset($smarty.get.dir) }>
    	<h1 ><{$way_to_cat}></h1>
    	<br />
    <{/if}>
    $title_chemin etant assigné à $way_to_cat
    il faut donc que je modifie cette fonction pour recupere chaque mot dans une varible et non l'ensemble dans une variable globale.
    Si vous avez des idéés ou plus d'explication elles sont les bienvenus merci à tous.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 17
    Par défaut essai
    bon j'ai modifie ma fonction:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    function show_me_the_way_clic($root, $url_r = true)
    {
    	global $lang;
     
    	$cm =& get_manager("category");
    	$re =& MyRewriteEngine::getInstance();
     
    	$way[]="<a href='./' title='".$lang['home']."'>".$lang['home'].'</a>';
     
    	while ($root!= 0)
    	{
    		$criteria = new Criteria("id",$root);
    		$criteria->setLimit(1);
    		$cols = array('id','name','root');
    		$category =& $cm->get($root,$cols);
    		$root = $category->getVar('root');
     
     
    		$way[] = ' > <a href="'.$re->buildUrl('category',array('name' => $category->getVar('name'), 'id' => $category->getVar('id'))).'">'.$category->getVar('name').'</a>';
     
    	}
    	return $way;
     
     
    }
    mais apparement $way est vide puisque plus rien ne s'affiche
    si quelqu'un sait ou est l'erreur ou alors comment je peux faire un pas a pas detaillé (je travaille sur nodepad et ca n'a pas l'air possible)
    merci a ceux qui pourront m'aider.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 17
    Par défaut solution
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
     
    function show_me_the_way_clic($root, $url_r = true)
         {
              global $lang;
              $title_chemin = '  ' ;
              $cm = & get_manager ( "category" ) ;
              $re = & MyRewriteEngine ::getInstance ( ) ;
     
              while ($root!= 0) 
                  {
                        $criteria = new Criteria("id",$root);
                        $criteria->setLimit(1);
                        $cols = array('id','name','root');
                        $category =& $cm->get($root,$cols);
                        $root = $category->getVar('root');
     
                       // La petite modif est dans ce bloc-là
                       if ($title_chemin == '')
    					{					
                                                   $title_chemin = ' > <h1> <a href = "'                                                                                                                                                                                                                                                                                .$re->buildUrl ('category', array ('name' => $category -> getVar('name') ,'id'  => $category -> getVar('id') ) ) .'">' .$category -> getVar ('name') . '</a> </h1>' .$title_chemin ;
    					} 
    				else 
    					{
    						$title_chemin = ' > <a href="'.$re ->  buildUrl ('category' ,array('name' => $category -> getVar('name'), 'id' => $category -> getVar('id') ) ) .'"> '.$category -> getVar('name') .'</a>' .$title_chemin;
     
    				}
    		}
    				$title_chemin = "<a  href='./'title='".$lang['home']."'>".$lang['home'].'</a>'.$title_chemin;
     
    		return $title_chemin;
    	}
    }
    et dans le html:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <{if isset($smarty.get.dir) }>
        <{$way_to_cat}>
        <br />
    <{/if}>

  6. #6
    Membre habitué
    Inscrit en
    Août 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 9
    Par défaut
    Il faudrait peut être considérer la possibilité de séparer la chaine en "sous-chaines" pour pouvoir récupérer les mots un à un
    Pour ce faire, il faudrait peut être creuser du côté de la fonction 'substr' qui permet d'extraire les sous-chaines de la chaine principale.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VS2002][CR8.5]Interprétation du code en HTML
    Par San Soussy dans le forum SDK
    Réponses: 1
    Dernier message: 24/01/2007, 15h36
  2. Interprétation de code
    Par alexorcet dans le forum C++
    Réponses: 9
    Dernier message: 10/12/2006, 14h09
  3. Interprétation des codes couleurs IE/Mozilla
    Par speedev dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 14/08/2006, 10h36
  4. interprété du code stocké en base de donnée
    Par namosis dans le forum MFC
    Réponses: 7
    Dernier message: 14/11/2005, 23h06
  5. Interprétation de code dynamiquement
    Par Smeuuh dans le forum Langages de programmation
    Réponses: 19
    Dernier message: 29/09/2005, 10h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo