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 :

Récupérer Valeurs Key


Sujet :

Langage PHP

  1. #1
    Membre habitué Avatar de guenfood
    Homme Profil pro
    Webdesigner
    Inscrit en
    Janvier 2004
    Messages
    254
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Webdesigner
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2004
    Messages : 254
    Points : 126
    Points
    126
    Par défaut Récupérer Valeurs Key
    Bonjour,

    Je souhaite afficher sur la page d'accueil de mon site, les posts les plus récents, sous la forme d'un widget.
    La valeur qui change le widget et le lien vers la page du post est la key 'product_no'.
    Sachant que l'affichage sera du lien disposant de la key la plus grand vers celle étant la plus petite.
    Tout semble bon, jusqu'à la partie
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php $values = get_post_custom_values("product_no"); echo $values[0];?>
    Qu'est-ce qui cloche dans ce code, et comment remédier à mon problème ?

    Merci par avance.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <?php 
    					$args=array(
    						'post__not_in' => $do_not_duplicate,
    						'post_type' => 'ignition_product',
    						'showposts' => '3',
    						'order' => 'desc',
    						'key' => 'product_no');
     
    					query_posts($args);
    					$blog_current_post = 1;
    				?>
    				<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
    					<div class="blurb<?php if ( $blog_current_post == 3 ) echo ' last'; ?>">
    					<iframe frameBorder="0" scrolling="no" src="http://www.solide-air.com/?ig_embed_widget=1&product_no=<?php $values = get_post_custom_values("product_no"); echo $values[0];?>" width="214" height="366"></iframe>

  2. #2
    Expert éminent sénior
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Points : 16 545
    Points
    16 545
    Billets dans le blog
    12
    Par défaut
    Salut,

    Pourrais-tu poster les codes des fonctions get_post_custom_values() et have_post() et the_post() ?
    C'est assez étrange tout ça.

  3. #3
    Membre habitué Avatar de guenfood
    Homme Profil pro
    Webdesigner
    Inscrit en
    Janvier 2004
    Messages
    254
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Webdesigner
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2004
    Messages : 254
    Points : 126
    Points
    126
    Par défaut
    Citation Envoyé par rawsrc Voir le message
    Pourrais-tu poster les codes des fonctions get_post_custom_values() et have_post() et the_post() ?
    C'est assez étrange tout ça.
    Comment ça les codes des fonctions ?
    Que veux-tu que je te communique exactement ?

  4. #4
    Expert éminent sénior
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Points : 16 545
    Points
    16 545
    Billets dans le blog
    12
    Par défaut
    Faire un if (test) { } suivi d'un while(test) { } peut juste se résumer à while(test) { } dans la mesure où la première évaluation de la condition test de la boucle devra renvoyer true pour amorcer les itérations.

    Une présentation légèrement différente :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    while(have_post()) {
        the_post();
        $class   = ($blog_current_post == 3) ? ' last' : '';
        $product = get_post_custom_values('product_no');
        echo
    <<<HTML
    <div class="blurb{$class}">
        <iframe frameBorder="0" scrolling="no" src="http://www.solide-air.com/?ig_embed_widget=1&product_no={$product[0]}" width="214" height="366"></iframe>
    HTML;
    }

  5. #5
    Membre habitué Avatar de guenfood
    Homme Profil pro
    Webdesigner
    Inscrit en
    Janvier 2004
    Messages
    254
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Webdesigner
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2004
    Messages : 254
    Points : 126
    Points
    126
    Par défaut
    J'ai dû cafouiller quelque part, j'ai un message d'erreur de syntaxe

    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
    <?php 
    					$args=array(
    						'post__not_in' => $do_not_duplicate,
    						'post_type' => 'ignition_product',
    						'showposts' => '3',
    						'order' => 'desc',
    						'key' => 'product_no');
     
    					query_posts($args);
    					$blog_current_post = 1;
    				?>
    				while(have_post()) {
        the_post();
        $class   = ($blog_current_post == 3) ? ' last' : '';
        $product = get_post_custom_values('product_no');
        echo
    <<<HTML
    <div class="blurb{$class}">
        <iframe frameBorder="0" scrolling="no" src="http://www.solide-air.com/?ig_embed_widget=1&product_no={$product[0]}" width="214" height="366"></iframe>
    HTML;
    }
     
    					</div>

  6. #6
    Expert éminent sénior
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Points : 16 545
    Points
    16 545
    Billets dans le blog
    12
    Par défaut
    C'est normal, tu refermes le tag php en ligne 13 juste avant le while

  7. #7
    Membre habitué Avatar de guenfood
    Homme Profil pro
    Webdesigner
    Inscrit en
    Janvier 2004
    Messages
    254
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Webdesigner
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2004
    Messages : 254
    Points : 126
    Points
    126
    Par défaut
    Arf !!!

    Bon, j'ai déplacé la fermeture du tag php, mais cette fois, j'ai un unexpected endwhile

    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
    <?php 
    					$args=array(
    						'post__not_in' => $do_not_duplicate,
    						'post_type' => 'ignition_product',
    						'showposts' => '3',
    						'order' => 'desc',
    						'key' => 'product_no');
     
    					query_posts($args);
    					$blog_current_post = 1;
     
    				while(have_post()) {
        the_post();
        $class   = ($blog_current_post == 3) ? ' last' : '';
        $product = get_post_custom_values('product_no');
        echo
    <<<HTML
    <div class="blurb{$class}">
        <iframe frameBorder="0" scrolling="no" src="http://www.solide-air.com/?ig_embed_widget=1&product_no={$product[0]}" width="214" height="366"></iframe>
    HTML;
    }?>
     
    					</div>

  8. #8
    Expert éminent sénior
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Points : 16 545
    Points
    16 545
    Billets dans le blog
    12
    Par défaut
    Dans ton code initial tu as arrêté ton rendu sur </iframe>, j'en ai fait de même.
    Vire ton dernier </div> et ré-essaie avec ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
        echo
    <<<HTML
    <div class="blurb{$class}">
        <iframe frameBorder="0" scrolling="no" src="http://www.solide-air.com/?ig_embed_widget=1&product_no={$product[0]}" width="214" height="366"></iframe>
    <div>    
    HTML;

  9. #9
    Membre habitué Avatar de guenfood
    Homme Profil pro
    Webdesigner
    Inscrit en
    Janvier 2004
    Messages
    254
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Webdesigner
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2004
    Messages : 254
    Points : 126
    Points
    126
    Par défaut
    Au temps pour moi, j'avais oublié de mentionner les lignes de code en dessous
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <div class="blurb{$class}">
        <iframe frameBorder="0" scrolling="no" src="http://www.solide-air.com/?ig_embed_widget=1&product_no={$product[0]}" width="214" height="366"></iframe>
    HTML;
    }?>
     
    					</div> <!-- end .blurb -->
    				<?php $blog_current_post++;?>
    				<?php wp_reset_query(); ?>
    Bon, j'ai plus de page blanche avec erreur de syntaxe, mais maintenant, sur la page, dans la partie où doivent s'afficher les liens <iframe>, j'ai ce message :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Fatal error: Call to undefined function have_post() in /homez.577/solideai/www/wp-content/themes/Feather/home.php on line 61

  10. #10
    Expert éminent sénior
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Points : 16 545
    Points
    16 545
    Billets dans le blog
    12
    Par défaut
    Euh, tu aurais pu corriger tout seul ma faute de frappe, non ?
    have_post() -> have_posts()

  11. #11
    Membre habitué Avatar de guenfood
    Homme Profil pro
    Webdesigner
    Inscrit en
    Janvier 2004
    Messages
    254
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Webdesigner
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2004
    Messages : 254
    Points : 126
    Points
    126
    Par défaut


    Plus les yeux en face des trous, il est temps que j'aille me mettre au lit

    Merci beaucoup pour ton aide

  12. #12
    Membre habitué Avatar de guenfood
    Homme Profil pro
    Webdesigner
    Inscrit en
    Janvier 2004
    Messages
    254
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Webdesigner
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2004
    Messages : 254
    Points : 126
    Points
    126
    Par défaut
    Bon, en fait, cela ne fonctionne pas

    Si j'affiche le code source de la page, j'ai ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <div class="blurb">
        <iframe frameBorder="0" scrolling="no" src="http://www.solide-air.com/?ig_embed_widget=1&product_no=" width="214" height="366"></iframe>
    Normalement, après le product_no= il devrait y avoir le nombre correspondant au no de produit.

  13. #13
    Expert éminent sénior
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Points : 16 545
    Points
    16 545
    Billets dans le blog
    12
    Par défaut
    Et bien ça veut simplement dire que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $product = get_post_custom_values('product_no');
    n'a pas l'air de correspondre à ce qui est attendu.
    rajoutes donc un juste après et tu tu verras si tu as un tableau.
    Faut pas hésiter à mettre les mains dans le cambouis sinon tu vas y passer un temps fou...

  14. #14
    Membre habitué Avatar de guenfood
    Homme Profil pro
    Webdesigner
    Inscrit en
    Janvier 2004
    Messages
    254
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Webdesigner
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2004
    Messages : 254
    Points : 126
    Points
    126
    Par défaut
    Bon, après avoir regardé tout ça de plus près, je dois tout reprendre, puisque la valeur 'product_no' que je souhaite utiliser est à récupérer dans une table.
    Donc obligé de passer par une requête SELECT...

Discussions similaires

  1. Récupérer valeur contrôle en dynamique via requête
    Par nicburger dans le forum Access
    Réponses: 10
    Dernier message: 15/09/2005, 15h41
  2. [ActionScript] Récupérer valeur balise <param />
    Par JohnBlatt dans le forum Flash
    Réponses: 1
    Dernier message: 18/07/2005, 14h50
  3. CR9 - Récupérer valeurs multiples d'un champ paramètre
    Par CR9-Deb dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 06/07/2005, 16h08
  4. récupérer valeur d'un ID après insertion
    Par rikidi dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 26/08/2003, 22h21

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