Page 1 sur 1

probleme de fermeture { et de ( et de ;

Posté : 03 mars 2015, 17:00
par gillescoste2006
onjour à tous

J'ai un problème avec les { et les (

J'ai cette programmation

Code : Tout sélectionner

if (isset($_GET['taguada']) && strpos($url, 'collier')!==false) { // lien depuis le mailing echo do_shortcode( '[sociallocker id="270"]<div><iframe width="95%" height="315px" src="//www.youtube.com/embed/'.$txt[1][0].'?version=3&autoplay=1&controls=0&showinfo=0&hl=fr_FR&rel=0" frameborder="0" allowfullscreen></iframe></div> <div>'.randomtext('pub') .'</div>[/sociallocker]' ); }
Maintenant je voudrais l'écrire comme cela

Code : Tout sélectionner

if (isset($_GET['taguada']) && strpos($url, 'collier')!==false) { // lien depuis le mailing echo do_shortcode( '[sociallocker id="270"]<div><iframe width="95%" height="315px" src="//www.youtube.com/embed/'.$txt[1][0].'?version=3&autoplay=1&controls=0&showinfo=0&hl=fr_FR&rel=0" frameborder="0" allowfullscreen></iframe></div> echo <div>'.randomtext('pub') .'</div>[/sociallocker]' ); }
Seulement voila ça me met des erreur parce que les { et ( et les ; ne sont pas bien fermés

et je n'y arrive pas tout seul

Est-ce que quelqu'un pourrait m'aider SVP à mettre les fermeture de } et ) et ; correctement

Merci beaucoup pour votre aide

Re: probleme de fermeture { et de ( et de ;

Posté : 03 mars 2015, 17:12
par xTG
Tu nous as recopié deux fois le même code. ;)

Re: probleme de fermeture { et de ( et de ;

Posté : 03 mars 2015, 21:41
par gillescoste2006
Non ce n'est pas le même code dans le 2ème le div tout en bas commence par un echo,

En fait le code que je voudrai mettre serai celui-ci

Code : Tout sélectionner

// lien depuis le mailing echo do_shortcode( '[sociallocker id="270"]<div><iframe width="95%" height="315px" src="//www.youtube.com/embed/'.$txt[1][0].'?version=3&autoplay=1&controls=0&showinfo=0&hl=fr_FR&rel=0" frameborder="0" allowfullscreen></iframe></div> if (isset($_GET['taguada']) && strpos($url, 'collier')!==false) { echo <div>'.randomtext('pub') .'</div>[/sociallocker]' ); }
C'est à dire commencer par le echo shortcode et mettre les conditions ensuite

Merci pour l'aide que vous pourrez m'apporter pour la fermeture correcte des balises } ou ) ou ;

Re: probleme de fermeture { et de ( et de ;

Posté : 03 mars 2015, 23:15
par Nestecha
// lien depuis le mailing
$sDivOrNot = (isset($_GET['taguada']) && strpos($url, 'collier')) ? '<div>'.randomtext('pub').'</div>' : '';
echo do_shortcode( '[sociallocker id="270"]<div><iframe width="95%" height="315px" src="//www.youtube.com/embed/'.$txt[1][0].'?version=3&autoplay=1&controls=0&showinfo=0&hl=fr_FR&rel=0" frameborder="0" allowfullscreen></iframe></div>'.$sDivOrNot.'[/sociallocker]');
Ca devrait fonctionner.

Pour la correction pure et dure de tes codes, seul le dernier code que tu as posté présente des erreurs.

Re: probleme de fermeture { et de ( et de ;

Posté : 04 mars 2015, 10:02
par sirakawa
Pour les accolades, il suffit de les numéroter de les indenter et de les commenter

Code : Tout sélectionner

while (bidule)//_________________________________________tant que bidule est juste {//1 if (truc)___________________________si truc est juste {//2 }}//2 else______________________________si truc est faux {//2 }}//2 fin (if truc foreach(d as e)//pour chaque élément de d {//2 }//2 fin foreach }//1 fin while (bidule) J'ai eu des étudiants en C qui commençaient par mettre les accolades avant tout codage: if () { } else { }
Pour les parenthèses, en aérant un peu et en les comptant on y arrive mieux
$g = f ($x (t ($h,$in,o($m)))
Il peut être plus simple de sortir les appels de fonctions (ca permet aussi de vérifier que la fonction fait bien son boulot
$z =o($m);
$g = f ($x (t ($h,$in,$z))

Re: probleme de fermeture { et de ( et de ;

Posté : 04 mars 2015, 10:07
par sirakawa
Ajoutons qu'employer un éditeur à coloration syntaxique comme bluefish ou un bidule comme Eclipse sont des plus considérables (ces choix parce qu'ils sont libres, gratuits et multiplateformes)

Re: probleme de fermeture { et de ( et de ;

Posté : 04 mars 2015, 10:51
par gillescoste2006
J'y suis presque mais j'ai encore une erreur en ligne 57 sur le elseif
Parse error: syntax error, unexpected '{', expecting '(' in /home/user/www/w/monsite/wp-content/themes/stuffy/single.php on line 57

Code : Tout sélectionner

preg_match_all("`com\/watch\?v=([^&]+)&feature`i", $content, $txt); // lien depuis le mailing echo do_shortcode( '[sociallocker id="270"]<div><iframe width="95%" height="315px" src="//www.youtube.com/embed/'.$txt[1][0].'?version=3&autoplay=1&controls=0&showinfo=0&hl=fr_FR&rel=0" frameborder="0" allowfullscreen></iframe></div>' ); $url = $_SERVER["REQUEST_URI"]; if (isset($_GET['taguada']) && strpos($url, 'collier')!==false) { echo ("<div>'.randomtext('pub') .'</div>[/sociallocker]'" ); } elseif { ( isset($_GET['fluxor']) || isset($_GET['maily'])) && strpos($url, 'collier')!==false && strpos($url, 'chainette')!==false } { echo ("<div>'.randomtext('pub') .'</div>[/sociallocker]'" ); } else { echo "<div><a href='http://eepurl.com/bdUDgj' target='_blank'><img src='http://www.monsite.com/img/email_30s_4min.gif'></a></div>"; }
Pourriez vous m'aider à le terminer Merci beaucoup

Re: probleme de fermeture { et de ( et de ;

Posté : 04 mars 2015, 11:25
par @rthur
Bonjour,

Le message d'erreur est relativement explicite :

Code : Tout sélectionner

unexpected '{', expecting '('
Qu'as tu essayé pour corriger le problème ?

Re: probleme de fermeture { et de ( et de ;

Posté : 04 mars 2015, 12:43
par sirakawa
if ( machin)
{
}
elseif (truc)
{

}