We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 38506
    • 103 Posts
    Bonjour à tous !

    J'ai besoin de vous ! Je dois faire un moteur de recherche selon plusieurs critère (prix, superficie et ville) que la personne choisie .

    Voici mon code :
    $parametres = array(
    'element' => 'getResources',
    'elementClass' => 'modSnippet',
    'parents' => $modx->resource->get('id'),
    'depth' => 2,
    'limit' => 3,
    'pageVarKey' => 'page',
    'includeTVs' => 1,
    'includeContent' => 1,
    'includeTVList' => 'ma_tv,description_terrain,tarif,ref,logo_constructeur,adresse,tel,site_constructeur',
    'tpl' => 'article',
    'processTVs' => 1,

    'pageLastTpl' => '<li class="control"><a[[+title]] href="[[+href]]">Dernière page</a></li>',
    'pageFirstTpl' => '<li class="control"><a[[+title]] href="[[+href]]">Première page</a></li>',
    );


    if ($_GET['Lieu']!=="none"){

    $ville=$_GET['Lieu'];

    $choix2 = strtoupper($_GET['prix']).$_GET['sup'].$_GET['Lieu'];

    switch ($choix2) {

    case "A0$ville":

    $parametres = array_merge($parametres, array(
    'tvFilters' => 'adresse_terrain==$ville',
    ));

    return $modx->runSnippet('getPage', $parametres);

    break;
    }
    }


    Je veux que les paramètres soient triés selon la ville que la personne choisie. Le problème c'est que je n'arrive pas à traduire le "$ville" car quand je met ça, cela ne marche pas. Par contre si je rempli avec une chaine de caractère cela marche !

    Si vous avez des solutions...
      • 34192 ☆ A M B ☆
      • 116 Posts
      Bonjour,

      Comme tu es en php, il faut je pense tout simplement mettre ton code de cette manière :
      case "A0".$ville: 


      et

      'tvFilters' => 'adresse_terrain=="'.$ville.'"',
        Donner vie à votre entreprise avec W&B CREATION
        Portfolio : Manuel GOBEAUT
        Tout sur MODx, le guide indispensable pour utiliser simplement le CMS MODx