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] Problème de split() explode() etc


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 152
    Par défaut [Tableaux] Problème de split() explode() etc
    Bonjour, c'est toujours moi avec mon forum en création
    là j'ai travaillé sur la partie modération. Lorsque j'édite le message, j'ajoute dans le message "Edité par baleiney le 28/06/2006 à 14h36" exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $message = "$message <br><br><font color=#6CAF2E>Modéré par $pseudo le $date_post.<br> Raison: \"$raison\"</font>";
    Mon problème, c'est que si je veux éditer deux fois le message je vais tomber sur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Le message modéré gngagnangangangna <br><br><font color=#6CAF2E>
    Modéré par baleiney le 2006-06-28 22:22:15. Raison: "Mauvais langage"
    et quand je revalide l'édition du message je vais avoir un truc du style
    Le message modéré gngagnangangangna <br><br><font color=#6CAF2E>Modéré par baleiney le 2006-06-28 22:22:15. Raison: "Exemple: Mauvais langage"

    Modéré par baleiney le 2006-06-28 22:22:27. Raison: "Exemple: Mauvais langage"
    Alors je voudrais faire un genre de split du message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    list($message, $fioriture) = split('[<br>.-]', $message);
    $message = "$message <br><br><font color=#6CAF2E>
    Modéré par $pseudo le $date_post.<br> Raison: \"$raison\"</font>";
    Comme ça, dès qu'il voit un <br> il ne garde que le début
    mais cela ne marche pas. Avez-vous une solution?

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 152
    Par défaut
    en fait je vais rajouter un champ dans ma table de messages c'est plus simple
    merci

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 152
    Par défaut
    Par contre j'ai une autre question
    si le mec veut s'amuser, en tapant son message à écrire des
    lllllllllllllllllllllllllllllllooooooooooonggggggggggggggssssssssssssssssmmmmmmmmmooooooooooooooooottttttttttttttttsssssssssssssssssssss
    ça va étirer le forum et détruire toute la structure du forum
    comment peut-on faire pour limiter le nombre de caractères d'UN MOT dans TOUT UN MESSAGE ?

  4. #4
    Membre chevronné
    Inscrit en
    Février 2005
    Messages
    419
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Février 2005
    Messages : 419
    Par défaut
    Une solution très bourrine consisterait à charger tous les mots dans un tableau avec un explode(' ', $message) ;.
    Parcourir tous les mots, agir sur ceux qui sont trop longs, et reconcatener le tout avec un implode.
    Mais bon ... comme je l'ai dis c'est un peu "extreme bourrinZ"
    Tu risques de te retrouver avec une grosse consommation de ressources.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 152
    Par défaut
    Argh oui je vois ouai c'est vrai que si ça ne tenait qu'à moi je ferais ça, mais bon le site aura beaucoup de monde donc c'est pas bon pour les ressources de mon serveur

  6. #6
    Invité
    Invité(e)
    Par défaut
    Pour les supers long mots et phrases qui cassent l'apparence, il y a la fonction php wordwrap() qui va se charger de couper la chaîne au bon endroit, etc etc

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Tableaux] problème avec la fonction split()
    Par Marcus15 dans le forum Langage
    Réponses: 3
    Dernier message: 26/02/2007, 12h17
  2. [Tableaux] problème de concaténation
    Par ludovik dans le forum Langage
    Réponses: 3
    Dernier message: 13/09/2005, 14h24
  3. [Tableaux] problème avec while
    Par zimotep dans le forum Langage
    Réponses: 3
    Dernier message: 11/09/2005, 11h30
  4. [Tableaux] Problème avec Switch case
    Par philippef dans le forum Langage
    Réponses: 4
    Dernier message: 07/09/2005, 17h37
  5. Réponses: 6
    Dernier message: 01/02/2005, 21h02

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