Obtenir la valeur d'une url ?

Obtenir la valeur d'une url ? - HTML/CSS - Programmation

Marsh Posté le 10-10-2010 à 02:05:19    

Hello,
j'ai une adresse du type www.site.fr/p?specialite=chirurgie&clinique=paris
j'aimerai bien afficher les resultats en javascript, je suis sous wordpress.
 
j'ai déja essayé ça mais sans résultat:

Code :
  1. <script language="JavaScript">
  2. function querystring(specialite) {
  3.    var re=new RegExp('(?:\\?|& )'+specialite+'=(.*?)(?=&|$)','gi');
  4.    var r=[], m;
  5.    while ((m=re.exec(document.location.search)) != null) r[r.length]=m[1];
  6.    return r;
  7. }
  8. </script>


 
Un grand merci pour un peu d'aide
 


Message édité par ludo2604 le 10-10-2010 à 02:25:27

---------------
Make Portraits, Not War!  
Reply

Marsh Posté le 10-10-2010 à 02:05:19   

Reply

Marsh Posté le 11-10-2010 à 08:23:15    

Bonjour,
Ce code te conviendrais ?

Code :
  1. <a href="http://www.site.fr/p?specialite=chirurgie&clinique=paris" id="lol">Chirurgie</a>
  2. <script language="Javascript">
  3. <!--
  4. alert(document.getElementById("lol" ).href);
  5. //-->
  6. </script>

Reply

Marsh Posté le 11-10-2010 à 11:36:09    

Il y a plusieurs solutions à ce problème classique. Par exemple :
 

   function getParamValue (sURL, Param, Default)  
    {
         //  Extracts and returns the parameter value from the URL for the specified parameter.
         //  If the parameter does not occur is the URL, the default value is returned.
         //  This function is not Case-sensitive.
         var sURLUpper = sURL.toUpperCase() + "&";
         Param = Param.toUpperCase();
         if (!Default) Default="";
     
         var Pos = sURLUpper.indexOf (Param + "=" );
         if (Pos==-1) return Default;
         Pos = Pos + Param.length + 1;
         return sURL.substring (Pos, sURLUpper.indexOf("&", Pos));
    }


 

function GetParam(name)
{
  var start=location.search.indexOf("?"+name+"=" );
  if (start<0) start=location.search.indexOf("&"+name+"=" );
  if (start<0) return '';
  start += name.length+2;
  var end=location.search.indexOf("&",start)-1;
  if (end<0) end=location.search.length;
  var result=location.search.substring(start,end);
  var result='';
  for(var i=start;i<=end;i++) {
    var c=location.search.charAt(i);
    result=result+(c=='+'?' ':c);
  }
  return unescape(result);
}

Reply

Marsh Posté le 12-10-2010 à 09:04:51    

Eu ... je ne vois pas l'intérêt de mettre 15 lignes pour un tout petit truc à la con. Quand tu auras à gérer un site de 1200 pages tu comprendras :)

Reply

Marsh Posté le 25-10-2010 à 03:25:07    

un grand merci tout fonctionne j'ai utilisé le PHP finalement, à defaut du javascript!


---------------
Make Portraits, Not War!  
Reply

Marsh Posté le 25-10-2010 à 14:32:18    

cetplus a écrit :

Eu ... je ne vois pas l'intérêt de mettre 15 lignes pour un tout petit truc à la con. Quand tu auras à gérer un site de 1200 pages tu comprendras :)


et ta solution risque de ne pas marcher on plus, l'ID étant censé être unique dans une même page, si l'utilisateur fait plusieurs liens il doit faire un id différent et ton truc ne marche plus du coup. Et je ne sais pas s'il veut récupérer l'URL (auquel cas ta solution répond à un besoin qui n'est pas le sien) ou un lien dans une page.


---------------
NewsletTux - outil de mailing list en PHP MySQL
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed