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 :

Bug qui crashe le design : forcer le retour à la ligne


Sujet :

Langage PHP

  1. #1
    Membre régulier Avatar de innova
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    185
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2004
    Messages : 185
    Points : 109
    Points
    109
    Par défaut Bug qui crashe le design : forcer le retour à la ligne
    Bonjour,

    Je veux faire un forum et bien sur la personne peut saisir un titre et un message.

    Je limite la taille du message en nombre de caractères. ( 400 )

    Seulement si l'utilisateur tape les 400 caractères sans jamais faire enter ( retour à la ligne ) j'ai une ligne de 400 caractères de long qui s'affiche tout le long et détruit façon de parler mon design web.

    Comment résoudre cela ?

    Peut-on gérer cela ?

    Merci
    ++

  2. #2
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Points : 12 572
    Points
    12 572
    Par défaut
    tu insere un saut de ligne tout les 40 caracteres par exemple !

  3. #3
    Membre régulier Avatar de innova
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    185
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2004
    Messages : 185
    Points : 109
    Points
    109
    Par défaut
    Citation Envoyé par RideKick
    tu insere un saut de ligne tout les 40 caracteres par exemple !

    re,

    C'est un site php...

    Comment fais-tu cela dans le code ?

    C'est en php ou css ?

    Merci
    ++

  4. #4
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Points : 12 572
    Points
    12 572
    Par défaut
    en php (donc en traitement APRES la validation du messsage par l'utilisateur)

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    if (!ereg("\n",$tontexte)){
     
    $chaine = explode(" ",$tontexte);
     
    for ($i = 0 ; $i < count($chaine);$i++){
     
    $phrase .= $chaine[$i]." ";
    if(strlen($phrase)>=40){
    $phrase .= "\n";}
     
    }
     
    }

    c'est un code fait a l'arrache ... donc pas testé !

    Si il n y a pas de saut de ligne je decoupe le texte en mots ... et je reconstruits le texte en inserat tout les 40 caracteres ou plus (si en plein mileu de mot) un saut de ligne !

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    572
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Juin 2005
    Messages : 572
    Points : 716
    Points
    716
    Par défaut
    J'avais déjà du utiliser ce principe effectivement il fonctionne très bien.

    En revanche dans ton code ridekick il faut passer par un buffer pour tester la longueur de la chaine, sinon après la première ligne la variable phrase sera toujours supérieure à 40 caractères

    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
     
    if (!ereg("\n",$tontexte)){
     
    $chaine = explode(" ",$tontexte);
    $buff = ""; 
    for ($i = 0 ; $i < count($chaine);$i++){
     
    $buff .= $chaine[$i]." ";
    if(strlen($buff)>=40){
    $phrase .= $buff."\n";
    $buff = "";
    }
     
    }
     
    }

  6. #6
    Membre régulier Avatar de innova
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    185
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2004
    Messages : 185
    Points : 109
    Points
    109
    Par défaut
    Citation Envoyé par RideKick
    en php (donc en traitement APRES la validation du messsage par l'utilisateur)

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    if (!ereg("\n",$tontexte)){
     
    $chaine = explode(" ",$tontexte);
     
    for ($i = 0 ; $i < count($chaine);$i++){
     
    $phrase .= $chaine[$i]." ";
    if(strlen($phrase)>=40){
    $phrase .= "\n";}
     
    }
     
    }

    c'est un code fait a l'arrache ... donc pas testé !

    Si il n y a pas de saut de ligne je decoupe le texte en mots ... et je reconstruits le texte en inserat tout les 40 caracteres ou plus (si en plein mileu de mot) un saut de ligne !
    re,

    oki merci et si il tape enter à la fin de chaque fin de phrase.

    Il va réagir comment le code ?

    Encore merci
    ++

  7. #7
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Points : 12 572
    Points
    12 572
    Par défaut
    Citation Envoyé par innova
    oki merci et si il tape enter à la fin de chaque fin de phrase.

    Il va réagir comment le code ?
    Il ne va rien modifier ...


    Citation Envoyé par ratapapa
    En revanche dans ton code ridekick il faut passer par un buffer pour tester la longueur de la chaine, sinon après la première ligne la variable phrase sera toujours supérieure à 40 caractères
    Exact ! comme je l avais dis c est un code non testé (donc pouvnt contenir quelques subtilités pouvant provoquer un comportement pourave )

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

Discussions similaires

  1. [Joomla!] Forcer un retour à la ligne dans un titre de menu
    Par teuie dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 20/03/2009, 19h30
  2. [CKEditor] Forcer le retour à la ligne
    Par christo59000 dans le forum Bibliothèques & Frameworks
    Réponses: 1
    Dernier message: 25/02/2008, 16h11
  3. [Caption] Forcer un retour à la ligne
    Par tet.dum dans le forum Tableaux - Graphiques - Images - Flottants
    Réponses: 2
    Dernier message: 01/06/2007, 10h12
  4. [CSS] Forcer le retour à la ligne
    Par Flobynaldo dans le forum Mise en page CSS
    Réponses: 6
    Dernier message: 24/05/2006, 18h00
  5. Forcer le retour à la ligne
    Par hawaks dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 19/04/2006, 17h19

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