Soucis d'erreur avec des BBcodes - regex
*Jeanjan*
Messages postés
9
Date d'inscription
Statut
Membre
Dernière intervention
-
*Jeanjan* Messages postés 9 Date d'inscription Statut Membre Dernière intervention -
*Jeanjan* Messages postés 9 Date d'inscription Statut Membre Dernière intervention -
Bonjour à vous :]
Je viens vous voir car je rencontre des soucis dans les bbcodes que je veux mettre en place :
Dès que je l'insère dans mon code, j'ai cette erreur : ( ! ) Parse error: syntax error, unexpected T_VARIABLE in C:\wamp\www\Site - Php\index.php on line 44 (qui est la ligne de cette regex !)
Je ne comprends pas, car les trois autres que j'ai pu faire son identique :
Auriez vous une idée que j'aurais pu zapper ?
Merci d'avoir pris le temps de lire mon soucis ! :]
Je viens vous voir car je rencontre des soucis dans les bbcodes que je veux mettre en place :
$texte = preg_replace('#\[strike](.+)\[/strike]#isU','<span style="text-decoration:[http://www.commentcamarche.net/download/telecharger-34098305-line line]-through;">$1</span>',$texte);
Dès que je l'insère dans mon code, j'ai cette erreur : ( ! ) Parse error: syntax error, unexpected T_VARIABLE in C:\wamp\www\Site - Php\index.php on line 44 (qui est la ligne de cette regex !)
Je ne comprends pas, car les trois autres que j'ai pu faire son identique :
// Bloc des balises [b]-[/b] $texte = preg_replace('#\[b](.+)\[/b]#isU', '<strong>$1</strong>', $texte); // Bloc des balises [u]-[/u] $texte = preg_replace('#\[i](.+)\[/i]#isU', '<em>$1</em>', $texte); // Bloc des balises [i]-[/i] $texte = preg_replace('#\[u](.+)\[/u]#isU','<span style="text-decoration:underline;">$1</span>',$texte);
Auriez vous une idée que j'aurais pu zapper ?
Merci d'avoir pris le temps de lire mon soucis ! :]
A voir également:
- Soucis d'erreur avec des BBcodes - regex
- Erreur 0x80070643 - Accueil - Windows
- Erreur 4101 france tv - Forum Lecteurs et supports vidéo
- J'aime par erreur facebook notification - Forum Facebook
- Code erreur f3500-31 ✓ - Forum Bbox Bouygues
- Java code erreur 1603 ✓ - Forum Windows
12 réponses
Voici le bout de code en question ! :] (merci de prendre le temps de regarder !!)
$reponse = $bdd->query('SELECT * FROM accueil ORDER BY id DESC LIMIT 0, 1'); while ($donnees = $reponse->fetch()) { $texte = nl2br(htmlspecialchars($donnees['message'])); //BBcode // Bloc des balises [b]-[/b] $texte = preg_replace('#\[b](.+)\[/b]#isU', '<strong>$1</strong>', $texte); // Bloc des balises [u]-[/u] $texte = preg_replace('#\[i](.+)\[/i]#isU', '<em>$1</em>', $texte); // Bloc des balises [i]-[/i] $texte = preg_replace('#\[u](.+)\[/u]#isU','<span style="text-decoration:underline;">$1</span>',$texte); // Bloc des balises [strike]-[/strike] $texte = preg_replace('#\[strike](.+)\[/strike]#isU','<span style="text-decoration:line-through;">$1</span>',$texte); echo $texte; ?>
Je n'ai pas d'erreur chez moi quand j'exécute ton code.
J'ai juste modifié pour exécuter les regex (essaie de donner un code exécutable directement après copier-coller c'est plus pratique pour nous) :
J'ai juste modifié pour exécuter les regex (essaie de donner un code exécutable directement après copier-coller c'est plus pratique pour nous) :
<?php //~ $reponse = $bdd->query('SELECT * FROM accueil ORDER BY id DESC LIMIT 0, 1'); //~ while ($donnees = $reponse->fetch()) //~ { $texte = nl2br(htmlspecialchars('dfsdfsd sd fsd d [strike]fsd[/strike] fsd fs sd')); //BBcode // Bloc des balises [b]-[/b] $texte = preg_replace('#\[b](.+)\[/b]#isU', '<strong>$1</strong>', $texte); // Bloc des balises [u]-[/u] $texte = preg_replace('#\[i](.+)\[/i]#isU', '<em>$1</em>', $texte); // Bloc des balises [i]-[/i] $texte = preg_replace('#\[u](.+)\[/u]#isU','<span style="text-decoration:underline;">$1</span>',$texte); // Bloc des balises [strike]-[/strike] $texte = preg_replace('#\[strike](.+)\[/strike]#isU','<span style="text-decoration:line-through;">$1</span>',$texte); echo $texte; ?>
Oups, désolé ! (C'est mon premier post !)
Je comprends pas d'ou peut provenir l'erreur alors ... Dès que je supprime le/la dernier/e regex, j'ai plus d'erreur !
Je comprends pas d'ou peut provenir l'erreur alors ... Dès que je supprime le/la dernier/e regex, j'ai plus d'erreur !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
essaie d'afficher avec un var_dump($texte); juste avant la dernière regex et envoie la dernière sortie.
Dès que je met la dernière regex, rien ne s'affiche a part l'erreur ! Du coup, je l'ai supprimé et mis le var_dump() et ca me donne ceci :
string '<strong>Bonjour,</strong><br />
<em>Bienvenue</em> <span style="text-decoration:underline;">sur</span> [strike]notre/strike site.' (length=132)
Rien d'anormal... Bizarre !
string '<strong>Bonjour,</strong><br />
<em>Bienvenue</em> <span style="text-decoration:underline;">sur</span> [strike]notre/strike site.' (length=132)
Rien d'anormal... Bizarre !
Je te met tout le fichier qui rencontre un soucis, cela peut etre t'être utile :
https://pastebin.com/Cj2JLi0D
https://pastebin.com/Cj2JLi0D
Je serai toi j'essaie d'installer xampp ou une autre version de wamp (avec une autre version de php donc) il est possible que l'erreur vienne de ta version de php
Alors, j'ai effacé toute mes regex, de A à Z, et j'ai tout repris à 0, et ca marche ...
Va t'en savoir pourquoi ! XD
Bref, merci beaucoup d'avoir pris de ton temps pour me répondre et tenter de résoudre mon soucis, merci beaucoup !
(juste une dernière question, ma regex pour un lien cliquable était elle correcte ?
Ou vaut il mieux :
Et dans la première regex, à quoi sert "-é" (que je ne comprends pas, j'ai trouvé sur un fofo qu'une personne disait que c'était à mettre !))
Bref, merci à toi :]
Va t'en savoir pourquoi ! XD
Bref, merci beaucoup d'avoir pris de ton temps pour me répondre et tenter de résoudre mon soucis, merci beaucoup !
(juste une dernière question, ma regex pour un lien cliquable était elle correcte ?
$texte = preg_replace('#(http|https|ftp)://([-éa-zA-Z0-9\/\.\?_=\#\@:~\{\}&;]{20})(.+)([-éa-zA-Z0-9\/\.\?_=\#\@:~\{\}&;]{5})#i', ' <a href="$0" target="_blank">$1://$2[...]$4</a> ', $texte);
Ou vaut il mieux :
$texte = preg_replace('#(http|https|ftp)://([\w\/\.\?_=\#\@:~\{\}&;]{20})(.+)([\w\/\.\?_=\#\@:~\{\}&;]{5})#i', ' <a href="$0" target="_blank">$1://$2[...]$4</a> ', $texte);
Et dans la première regex, à quoi sert "-é" (que je ne comprends pas, j'ai trouvé sur un fofo qu'une personne disait que c'était à mettre !))
Bref, merci à toi :]