Check lengte per woord [php]

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Tamara

Tamara

29/11/2006 13:04:00
Quote Anchor link
Hallo,

ik heb even een klein vraagje: kan je ervoor zorgen dat de informatie die bijvoorbeeld verzonden word via een formulier gechecked wordt PER WOORD op lengte.

Deze vraag komt voort uit het volgende probleem: Ik heb een shoutbox, en als men hele lange woorden intikt of zomaar wat wordt mijn complete layout verneukt. Ik heb al geprobeerd het op te lossen via CSS, maar ik krijg het niet voor elkaar...
 
PHP hulp

PHP hulp

27/12/2024 07:48:54
 
Klaasjan Boven

Klaasjan Boven

29/11/2006 13:05:00
Quote Anchor link
eerst explode op (' ') en en dan strlen() zo krijge je de woordlengten
 
Gerben G

Gerben G

29/11/2006 13:14:00
Quote Anchor link
je hebt ook nog de functie wordwrap()
 
CrawlBackwards

CrawlBackwards

29/11/2006 13:30:00
Quote Anchor link
maar wordwrap geeft en geen lengte.. en breekt alleen af op hele woorden (of misschin ook strepen) maar je layout kan nogsteeds verneukt worden.. ik zou voor klaasjans optie gaan..
 
Martijn B

Martijn B

29/11/2006 13:38:00
Quote Anchor link
Je zou ook eens naar de CSS eigenschap overflow kunnen kijken.

http://www.w3.org/TR/CSS21/visufx.html#overflow
 
Tamara

Tamara

29/11/2006 14:44:00
Quote Anchor link
Martijn, bedankt - maar ik wil juist níet dat hij overflowed. Dat zou zeggen dat een gedeelte van de tekst buiten het zichtbare gedeelte valt, en dat is niet de bedoeling :)

goed, ik heb 2 tekstvelden: onderwerp en txt.

die worden allebei al met strlen gecontroleerd op maximaal danwel minimaal aantal tekens op deze wijze:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<? if (strlen($naam)<3)
{

$text = NAAM_KORT;
include("fout.php");
exit; ?>


hoe kan ik het handigst de complete input van de user, dus alles wat via POST verstuurd wordt, controleren op woordlengte met explode?

zoiezo bedankt voor jullie reacties!
 
K i p

K i p

29/11/2006 14:52:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
$elk_woord
= explode(" ",$_POST['txt']);
foreach($elk_woord as $value)
{

    if (strlen($value) > 20)
    {

        //te lang
    }
    else
    {
        //goed
    }
}

?>
 
Tamara

Tamara

29/11/2006 15:02:00
Quote Anchor link
kan ik ervoor zorgen dat hij de tekst automatisch afbreekt? heel erg bedankt toruwens!
 
Jurgen assaasas

Jurgen assaasas

29/11/2006 15:15:00
Quote Anchor link
je kunt ook je database veld een maximaal aantal characters geven bijv 300
op mijn weblog gebruik ik bijv strlen() voor maximaal 300 characters weer te geven(om de lezer nieuwschierig te maken en de pagina in te korten). En er vervolgens een "lees meer" knop bij te maken.
 
CrawlBackwards

CrawlBackwards

29/11/2006 15:49:00
Quote Anchor link
Jurgen schreef op 29.11.2006 15:15:
je kunt ook je database veld een maximaal aantal characters geven bijv 300
op mijn weblog gebruik ik bijv strlen() voor maximaal 300 characters weer te geven(om de lezer nieuwschierig te maken en de pagina in te korten). En er vervolgens een "lees meer" knop bij te maken.


ik heb de indruk dat dat niet toepasselijk voor dit probleem is..
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
$elk_woord
= explode(" ",$_POST['txt']);
foreach($elk_woord as $key => $value)
{

    if (strlen($value) > 20)
    {

        $arr = str_split($value, 20);
        $elk_woord[$key] = implode("-", $arr);

    }

    else
    {
        //goed
    }
}


?>


zoiets.. (niet gecontroleerd)

edit:
hierna moet je met implode() en wordwrap() je output aanpassen
Gewijzigd op 01/01/1970 01:00:00 door CrawlBackwards
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.