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 :

[Tableaux] Utilisation de la fonction get_meta_tags [Fait]


Sujet :

Langage PHP

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    818
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Drôme (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2005
    Messages : 818
    Points : 288
    Points
    288
    Par défaut [Tableaux] Utilisation de la fonction get_meta_tags
    Bonjour,

    J'utilise la fonction get_meta_tags pour faire une recherche sur les mots clés et le descriptif de plusieurs sites...

    Est ce qu'il y a un moyen de rendre plus rapide l'execution de cette fonction?
    Car j'ai une centaine de sites, et la requete est très longue...

    Est il possible de cibler les balises meta a telecharger?

    Voici mon code:
    Le tableau $mots_tag[] contient le ou les mots à rechercher dans les tags...
    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
     
    $query_tags="SELECT * FROM sites WHERE statut=1";
    $req_tags=mysql_query($query_tags);
    $nb_tags=mysql_num_rows($req_tags);
    for($itag=0;$itag<$nb_tags;$itag++)
    {
    	$nom_site=mysql_result($req_tags,$itag,"nom_site");
    	$url_rech="http://www.".$nom_site;
    	$tags_rech=get_meta_tags($url_rech);
     
    	$testlistemot=0;
    	for($itag0=0;$itag0<$nombre_mots_tag;$itag0++)
    	{
    		if(strstr($tags_rech['description'],$mots_tag[$itag0])!=false)
    		{
    			$testlistemot++;
    		}
    		elseif(strstr($tags_rech['keywords'],$mots_tag[$itag0])!=false)
    		{
    			$testlistemot++;
    		}
    	}
    	if($testlistemot==$nombre_mots_tag)
    	{
    		$chaine_mot_tag.=$nom_site." ";
    	}
    }
    Sinon une idée pour optimiser mon code? Peut être que c'est aussi ma programmation qui est lourde...

    Meme si je pense que le probleme vient plutot du fait que la fnction get_meta_tags doit certainement faire une connection sur chaque site, donc a mon avis le probleme viendrait plus des serveurs où sont hébergés les sites vers lesquels je fais mes requêtes...

    Merci d'avance de votre aide...

  2. #2
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    Salut!

    Forcément, il ya une connexion sur ces sites pour récupérer leurs tags.
    Je ne pense pas qu'il existe un moyen plus rapide de procéder, à part peut-être faire du multi-streams...
    c'est-à-dire ne pas attendre le retour d'un site pour en lancer un autre...

    Attendons de voir ce qu'en pensent les autres membres du forum.

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    818
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Drôme (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2005
    Messages : 818
    Points : 288
    Points
    288
    Par défaut
    Comment faire du multi streams en php? je n'ai jamais utilisé ca...

  4. #4
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    Tu as de la chance, je viens de retrouver les sujets du forum que je cherchais pour toi.
    Avec toutes ces infos, je pense que tu devrais trouver ton bonheur,
    surtout le 2ème sujet devrait t'intérresser. Bonne lecture :

    http://www.developpez.net/forums/d10...plan-page-web/
    http://www.developpez.net/forums/d17...t-setinterval/

    [EDIT] J'ai quelques questions importantes à te poser :

    1) Tu es sur un serveur dédié ou mutualisé ?
    2) Tu comptes lancer souvent ton script ?
    3) et automatiser le processus (cron) ? A quelle fréquence ?
    4) Tu as une raison particulière de le programmer en PHP ?

  5. #5
    Membre actif
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    818
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Drôme (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2005
    Messages : 818
    Points : 288
    Points
    288
    Par défaut
    Réponses:
    1)mutualisé
    2)ce sont les utilisateurs qui vont lancer le script...
    En fait mon site est en quelque sorte un annuaire, et ce que je veux faire c'est une recherche dans les balises meta keywords et meta desc de chaque site inscrit à l'annuaire...
    En fait il s'agit d'un moteur de recherche dans l'annuaire...
    3)donc pas d'automatisation
    4)pas forcement, mais c'est le langage que je maitrise le mieux...

    Donc au vu de ce que tu m'as très gentilment mis en lien, je me demande si finalement il ne s'erait pas plus judicieux de stocker le contenu des balises meta keywords et meta desc dans ma base de données au moment où un site s'inscrit dans l'annuaire...

  6. #6
    Membre confirmé Avatar de LeGilou
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    488
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 488
    Points : 531
    Points
    531
    Par défaut
    Bonjour,

    tu devrais lancer régulièrement ce script, automatiquement et enregistrer les metatag en base de données.

    Ensuite, les utilisateurs feront leur recherche dans la base.

    Gillou.

  7. #7
    Membre actif
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    818
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Drôme (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2005
    Messages : 818
    Points : 288
    Points
    288
    Par défaut
    Ouai, je pense que c'est ce qu'il y a de mieux, car aller regarder dans tous es sites au moment de la rechrche est beaucoup trop lourd...

    Donc je pense que e vais faire une tache cron qui met a jour les balises meta enregistrees dans la base de donnee regulierement, comme ca pour faire la recherche, le temps d'eecution sera optimisé...

Discussions similaires

  1. [Tableaux] Utilisation de la fonction array_combine
    Par kagura dans le forum Langage
    Réponses: 2
    Dernier message: 23/03/2009, 01h09
  2. Réponses: 2
    Dernier message: 21/10/2008, 20h59
  3. [Tableaux] Utilisation de la fonction array_search
    Par arnaudperfect dans le forum Langage
    Réponses: 1
    Dernier message: 13/02/2008, 10h21
  4. [Tableaux] utilisation fonction unserialize.
    Par amy0o0 dans le forum Langage
    Réponses: 1
    Dernier message: 27/09/2007, 22h59
  5. Réponses: 4
    Dernier message: 27/09/2007, 15h08

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