[RESOLU] requête substr et plusieurs champs

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] requête substr et plusieurs champs

Re: requête substr et plusieurs champs

par petite fée » 15 mars 2017, 11:40

Oh super !!!!

Merci beaucoup,

PF

Re: requête substr et plusieurs champs

par Spols » 15 mars 2017, 10:10

pas de soucis, modifier la requète est aisé.
$resultat1=$client->query("SELECT SUBSTR(nom_champ,
              INSTR(nom_champ, 'occurrence' ) -20,
              CHAR_LENGTH( 'occurrence' ) +30
              ) AS resultat, id
FROM table
WHERE nom_champ LIKE '%occurrence%'");
pour autant que ton champs se nomme bien id, tu récupèrera la valeur dans ta boucle avec $news['id']

requête substr et plusieurs champs

par petite fée » 15 mars 2017, 08:14

Bonjour à tous !

Je crée un petit moteur de recherche sur mon site, et je veux afficher les résultats sous forme d'extrait contenant le mot recherché.
j'y arrive comme ceci :

Code : Tout sélectionner

require_once('Connections/client.php'); $resultat1=$client->query("SELECT SUBSTR(nom_champ, INSTR(nom_champ, 'occurrence' ) -20, CHAR_LENGTH( 'occurrence' ) +30 ) AS resultat FROM table WHERE nom_champ LIKE '%occurrence%'"); // $news=$resultat1->fetch_assoc(); while($news=$resultat1->fetch_assoc()) { $tab = explode(" ", $news['resultat']); //on découpe le résultat et le stock dans un tableau $tab = array_splice($tab, 1); //on enlève le premier mot $tab = array_splice($tab, 0,sizeof($tab)-1); //on enlève le dernier mot $tab = str_replace ( 'occurrence' , '<b>occurrence</b>' , $tab ); // on met le mot en gras echo "...".implode(" ", $tab)."..."; //on retranscrit le tableau dans une chaine }
j'étais toute contente de moi, mais je viens de me rendre compte que je ne récupérais pas l'id de l'enregistrement... Du coup je ne peux pas mettre un lien pour afficher l'enregistrement complet.
Etant donné que le résultat est stocké dans "resultat", je n'en ai qu'un...
Est-ce que cette requête peut être modifiée pour récupérer le champ id, ou vaut-il mieux que je trouve une autre solution pour afficher les résultats sous forme d'extrait après ma requête ?

Merci de vos éclairages,

PF