Je cherche mon erreur unexpected 'AND' (T_LOGICAL_AND)
Résolu/Fermé
chatvertdusud
Messages postés
71
Date d'inscription
mardi 7 avril 2015
Statut
Membre
Dernière intervention
14 septembre 2016
-
Modifié par jordane45 le 6/07/2015 à 19:17
chatvertdusud Messages postés 71 Date d'inscription mardi 7 avril 2015 Statut Membre Dernière intervention 14 septembre 2016 - 7 juil. 2015 à 01:46
chatvertdusud Messages postés 71 Date d'inscription mardi 7 avril 2015 Statut Membre Dernière intervention 14 septembre 2016 - 7 juil. 2015 à 01:46
A voir également:
- Je cherche mon erreur unexpected 'AND' (T_LOGICAL_AND)
- Erreur 0x80070643 - Accueil - Windows
- Erreur 0x80070643 Windows 10 : comment résoudre le problème de la mise à jour KB5001716 - Accueil - Windows
- Erreur 1001 outlook - Accueil - Bureautique
- Erreur 38 free ✓ - Forum Mobile
- Erreur 3000 france tv - Forum Lecteurs et supports vidéo
3 réponses
jordane45
Messages postés
38314
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 novembre 2024
4 705
Modifié par jordane45 le 6/07/2015 à 19:20
Modifié par jordane45 le 6/07/2015 à 19:20
Bonjour,
Tu fermes une parenthèse trop top...
et perso je préfère utiliser les && au lieu des AND
Cordialement,
Jordane
Tu fermes une parenthèse trop top...
et perso je préfère utiliser les && au lieu des AND
<?php if ( !empty($price) && ($price>5 && $price<300000) && ( get_post_meta( $post->ID, 'cp_en_change_de_', true ) ) { echo substr(get_post_meta($post->ID, 'cp_en_change_de_', true), 0, 13);) } ?>
Cordialement,
Jordane
jordane45
Messages postés
38314
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 novembre 2024
4 705
Modifié par jordane45 le 6/07/2015 à 19:43
Modifié par jordane45 le 6/07/2015 à 19:43
Il y avait une autre erreur que je n'avais pas vu ...
voici :
Cordialement,
Jordane
voici :
<?php if ( get_post_meta( $post->ID, 'price', true ) ){ cp_get_price_legacy( $post->ID ); }else{ cp_get_price( $post->ID, 'cp_price' ); echo "</p>"; } if ( !empty($price) && ( $price>5 && $price<300000 ) && ( get_post_meta( $post->ID, 'cp_en_change_de_', true ) ) ) { echo substr(get_post_meta($post->ID, 'cp_en_change_de_', true), 0, 13);) } ?>
Cordialement,
Jordane
chatvertdusud
Messages postés
71
Date d'inscription
mardi 7 avril 2015
Statut
Membre
Dernière intervention
14 septembre 2016
6 juil. 2015 à 20:18
6 juil. 2015 à 20:18
merci Jordan pour la correction,
il y avait une parenthèse ' )' en trop à la fin que j'ai enlevé, cependant je n'arrive toujours pas à faire ce que je cherche...
Il m'affiche la variable cp_en_change_de_ uniquement si la variable cp_price est remplie.
Moi je cherche à faire l'inverse: Si le champ cp_price est vide, il affiche cp_en_change_de_
il y avait une parenthèse ' )' en trop à la fin que j'ai enlevé, cependant je n'arrive toujours pas à faire ce que je cherche...
Il m'affiche la variable cp_en_change_de_ uniquement si la variable cp_price est remplie.
Moi je cherche à faire l'inverse: Si le champ cp_price est vide, il affiche cp_en_change_de_
jordane45
Messages postés
38314
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 novembre 2024
4 705
>
chatvertdusud
Messages postés
71
Date d'inscription
mardi 7 avril 2015
Statut
Membre
Dernière intervention
14 septembre 2016
6 juil. 2015 à 20:23
6 juil. 2015 à 20:23
Tu veux dire dans cette condition ?
Le truc .. c'est que si $price est vide ... alors il ne peut pas être >5 ou <3000000 .....
A moins que toi tu veuilles que la condition se vérifie si il est vide OU >5 ... et donc .. utiliser des OR à la place des AND...
et donc.. ça donnerait un truc du genre:
if ( !empty($price) && ( $price>5 && $price<300000 ) && ( get_post_meta( $post->ID, 'cp_en_change_de_', true ) ) ) { echo substr(get_post_meta($post->ID, 'cp_en_change_de_', true), 0, 13);) }...
Le truc .. c'est que si $price est vide ... alors il ne peut pas être >5 ou <3000000 .....
A moins que toi tu veuilles que la condition se vérifie si il est vide OU >5 ... et donc .. utiliser des OR à la place des AND...
et donc.. ça donnerait un truc du genre:
if ( empty($price) || ( $price>5 && $price<300000 ) || ( get_post_meta( $post->ID, 'cp_en_change_de_', true ) ) ) { echo substr(get_post_meta($post->ID, 'cp_en_change_de_', true), 0, 13);) }
chatvertdusud
Messages postés
71
Date d'inscription
mardi 7 avril 2015
Statut
Membre
Dernière intervention
14 septembre 2016
6 juil. 2015 à 20:52
6 juil. 2015 à 20:52
j'essaie des choses mais toujours pas le résultat escompté
je souhaite que si la valeur 'price' est inferieur à 5 ou supérieur à 300000 le champ 'cp_en_change_de_' s'affiche ... je comtinue à chercher, merci ;-)
je souhaite que si la valeur 'price' est inferieur à 5 ou supérieur à 300000 le champ 'cp_en_change_de_' s'affiche ... je comtinue à chercher, merci ;-)
jordane45
Messages postés
38314
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 novembre 2024
4 705
>
chatvertdusud
Messages postés
71
Date d'inscription
mardi 7 avril 2015
Statut
Membre
Dernière intervention
14 septembre 2016
6 juil. 2015 à 21:05
6 juil. 2015 à 21:05
inferieur à 5 ou supérieur à 300000
Ben.. dans ce cas... tu t'es un peu trompé dans le sens de tes signes supérieur/inférieur...
et là encore.. ça sera des OU qu'il faut utiliser et non des ET !!!!
if ( empty($price) || ( $price<5 || $price>300000 ) || ( get_post_meta( $post->ID, 'cp_en_change_de_', true ) ) ) { echo substr(get_post_meta($post->ID, 'cp_en_change_de_', true), 0, 13);) }
chatvertdusud
Messages postés
71
Date d'inscription
mardi 7 avril 2015
Statut
Membre
Dernière intervention
14 septembre 2016
6 juil. 2015 à 21:21
6 juil. 2015 à 21:21
oui, j'avais vu cette grossière erreur mais cela ne change malheureusement rien.
La valeur "cp_en_change_de_" s'affiche uniquement si il y a une valeur "price"
La valeur "cp_en_change_de_" s'affiche uniquement si il y a une valeur "price"
chatvertdusud
Messages postés
71
Date d'inscription
mardi 7 avril 2015
Statut
Membre
Dernière intervention
14 septembre 2016
6 juil. 2015 à 21:42
6 juil. 2015 à 21:42
function cp_remove_loop_price() {
global $post;
if ( $post->post_type == 'page' || $post->post_type == 'post' ) return;
$price = get_post_meta($post->ID, 'cp_price', true);
if (!empty($price) AND ($price>5 && $price<300000)){
?>
<div class="price-wrap">
<span class="tag-head"> </span><p class="post-price">
<?php
if ( get_post_meta( $post->ID, 'price', true ) ){
cp_get_price_legacy( $post->ID );
}else{
cp_get_price( $post->ID, 'cp_price' );
echo "</p>";
}
if ( empty($price)
|| ( $price<5 || $price>300000 )
|| ( get_post_meta( $post->ID, 'cp_en_change_de_', true ) ) ) {
echo substr(get_post_meta($post->ID, 'cp_en_change_de_', true), 0, 13);
}
?>
jordane45
Messages postés
38314
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 novembre 2024
4 705
6 juil. 2015 à 21:47
6 juil. 2015 à 21:47
1 - .. merci de mettre le LANGAGE dans les balises de code...
<code php>
<?php // ceci est du code !
</code>
2 - Tu ne nous a pas donné le code complet de ta fonction
3 - Il semble que tu aies un IF qui ne soit pas fermé ... et ce if .. contient :
.. donc... $prince NON VIDE .... et donc en gros.. tu ne rentres jamais dans ton autre if !
<code php>
<?php // ceci est du code !
</code>
2 - Tu ne nous a pas donné le code complet de ta fonction
3 - Il semble que tu aies un IF qui ne soit pas fermé ... et ce if .. contient :
if (!empty($price) AND ($price>5 && $price<300000)){
.. donc... $prince NON VIDE .... et donc en gros.. tu ne rentres jamais dans ton autre if !
jordane45
Messages postés
38314
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 novembre 2024
4 705
6 juil. 2015 à 21:50
6 juil. 2015 à 21:50
A mon avis tu avais simplement oublié de fermer le if
PS : Au passage .. je rappel que ceci n'a plus rien à voir avec ta question INITIALE .. et donc que logiquement tu aurais du ouvrir un NOUVELLE discussion (en pensant à mettre en résolu celle là. )
Cela facilite la lecture sur le forum et les recherches par les futurs internautes ....
function cp_remove_loop_price() { global $post; if ( $post->post_type == 'page' || $post->post_type == 'post' ) return; $price = get_post_meta($post->ID, 'cp_price', true); if (!empty($price) AND ($price>5 && $price<300000)){ echo '<div class="price-wrap">'; echo '<span class="tag-head"> </span><p class="post-price">'; } if ( get_post_meta( $post->ID, 'price', true ) ){ cp_get_price_legacy( $post->ID ); }else{ cp_get_price( $post->ID, 'cp_price' ); echo "</p>"; } if ( empty($price) || ( $price<5 || $price>300000 ) || ( get_post_meta( $post->ID, 'cp_en_change_de_', true ) ) ) { echo substr(get_post_meta($post->ID, 'cp_en_change_de_', true), 0, 13); }
PS : Au passage .. je rappel que ceci n'a plus rien à voir avec ta question INITIALE .. et donc que logiquement tu aurais du ouvrir un NOUVELLE discussion (en pensant à mettre en résolu celle là. )
Cela facilite la lecture sur le forum et les recherches par les futurs internautes ....
chatvertdusud
Messages postés
71
Date d'inscription
mardi 7 avril 2015
Statut
Membre
Dernière intervention
14 septembre 2016
7 juil. 2015 à 01:46
7 juil. 2015 à 01:46
malheureusement ça ne change rien, merci quand même ;-)
6 juil. 2015 à 19:28
Décidément tu es toujours là prêt à partager tes connaissances ;-)
j'ai toujours une erreur ..
syntax error, unexpected '{'
et si j'enlève les { j'ai une autre erreur avec echo ??