Ik moet een webprogramma met php maken wat het volgende doet:

In de startpagina wordt gevraagd om een stuk tekst
door het klikken op een knop wordt een php pagina aangeroepen die van het stuk tekst bepaald:
Het aantal woorden, het aantal tekens, het aantal klinkers, het aantal medeklinkers, het aantal leestekens, het aantal spaties.
Dit wordt dan als resultaat getoond in een nieuwe pagina.Je kunt van af de resultaat pagina netjes terug (via een link ) naar de startpagina.

Als iemand me hierbij kan helpen. Alvast bedankt
Biedt [php]str_word_count[/php]() mischien hulp?
Het is gelukt! Thanks
Wil nog 1 ding weten eigenlijk.
Heb nu het hele script klaar.
Alleen wil het zo hebben dat als ik op bereken klik.
Dat hij de uitkomst in een nieuwe pagina zet waarmee ik op die nieuwe pagina weer met een button terug kan gaan naar de index pagina!

kan iemand mij helpen?
Ik zal het script hieronder zetten.


<html>
<head>
<title>page1</title>
</head>
<body>
<form method = "POST">
<p>
  <textarea name="tekst" ></textarea>
</p>
<p>
  <input type="submit" name="bereken" id="bereken" value="Bereken">
</p>
</form>

[code]
<?php

$tekst = $_POST['tekst']; 

$count = strlen($tekst);

$woorden   = str_word_count($tekst);

$klinkers = 0;
$i = 0;
while($i<$count)
{
    if($tekst[$i]=='a' || $tekst[$i]=='A' ) $klinkers++ ;
	if($tekst[$i]=='o' || $tekst[$i]=='O' ) $klinkers++ ;
	if($tekst[$i]=='i' || $tekst[$i]=='I' ) $klinkers++ ;
	if($tekst[$i]=='e' || $tekst[$i]=='E' ) $klinkers++ ;
	if($tekst[$i]=='u' || $tekst[$i]=='U' ) $klinkers++ ;
	$i++;
}

$letters = 0;
$k = 0;
while($k<$count)
{
    if($tekst[$k]=='a' || $tekst[$k]=='n' ) $letters++ ;
	if($tekst[$k]=='b' || $tekst[$k]=='o' ) $letters++ ;
    if($tekst[$k]=='c' || $tekst[$k]=='p' ) $letters++ ;
    if($tekst[$k]=='d' || $tekst[$k]=='q' ) $letters++ ;
	if($tekst[$k]=='e' || $tekst[$k]=='r' ) $letters++ ;
	if($tekst[$k]=='f' || $tekst[$k]=='s' ) $letters++ ;
	if($tekst[$k]=='g' || $tekst[$k]=='t' ) $letters++ ;
	if($tekst[$k]=='h' || $tekst[$k]=='u' ) $letters++ ;
	if($tekst[$k]=='i' || $tekst[$k]=='v' ) $letters++ ;
	if($tekst[$k]=='j' || $tekst[$k]=='w' ) $letters++ ;
	if($tekst[$k]=='k' || $tekst[$k]=='x' ) $letters++ ;
	if($tekst[$k]=='l' || $tekst[$k]=='y' ) $letters++ ;
	if($tekst[$k]=='m' || $tekst[$k]=='z' ) $letters++ ;
	if($tekst[$k]=='A' || $tekst[$k]=='N' ) $letters++ ;
	if($tekst[$k]=='B' || $tekst[$k]=='O' ) $letters++ ;
    if($tekst[$k]=='C' || $tekst[$k]=='P' ) $letters++ ;
    if($tekst[$k]=='D' || $tekst[$k]=='Q' ) $letters++ ;
	if($tekst[$k]=='E' || $tekst[$k]=='R' ) $letters++ ;
	if($tekst[$k]=='F' || $tekst[$k]=='S' ) $letters++ ;
	if($tekst[$k]=='G' || $tekst[$k]=='T' ) $letters++ ;
	if($tekst[$k]=='H' || $tekst[$k]=='U' ) $letters++ ;
	if($tekst[$k]=='I' || $tekst[$k]=='V' ) $letters++ ;
	if($tekst[$k]=='J' || $tekst[$k]=='W' ) $letters++ ;
	if($tekst[$k]=='K' || $tekst[$k]=='X' ) $letters++ ;
	if($tekst[$k]=='L' || $tekst[$k]=='Y' ) $letters++ ;
	if($tekst[$k]=='M' || $tekst[$k]=='Z' ) $letters++ ;
	$k++;
}

$leestekens = 0;
$m = 0;
while($m<$count)
{
    if($tekst[$m]=='.' || $tekst[$m]==',' ) $leestekens++ ;
	if($tekst[$m]==':' || $tekst[$m]==';' ) $leestekens++ ;
    if($tekst[$m]=='"' || $tekst[$m]=='|' ) $leestekens++ ;
    if($tekst[$m]=='-' || $tekst[$m]=='{' ) $leestekens++ ;
	if($tekst[$m]=='}' || $tekst[$m]=='!' ) $leestekens++ ;
	if($tekst[$m]=='?' || $tekst[$m]=='~' ) $leestekens++ ;
	if($tekst[$m]=='&' || $tekst[$m]=='*' ) $leestekens++ ;
	if($tekst[$m]=='$' || $tekst[$m]==')' ) $leestekens++ ;
	if($tekst[$m]=='(' || $tekst[$m]=='=' ) $leestekens++ ;
	if($tekst[$m]=='+' || $tekst[$m]=='[' ) $leestekens++ ;
	if($tekst[$m]==']' || $tekst[$m]=='%' ) $leestekens++ ;
	if($tekst[$m]=='_' || $tekst[$m]=='@' ) $leestekens++ ;
	$m++;
}

echo "Gevonden in de tekst:<br>";				
echo "" . $letters . " letters<br>";
echo "" . $klinkers . "  klinkers<br>";
echo "" . $woorden . " woorden<br>";
echo "" . $leestekens . " leestekens<br>";
echo "" . $count . " tekens<br>";

?>


</body>
</html>
[/code]
Je kijkt eerst of er iets gepost heeft, zoja -> controleer die tekst. Zonee -> show het formuliertje


<?php
if($_SERVER['REQUEST_METHOD'] =='POST' )
{
	//er is wat verstuurd
}
else
{
	//hier niet
}
?>
Okee maar hoe kan ik er nou voor zorgen dat alleen dit:


echo "Gevonden in de tekst:<br>";                
echo "" . $letters . " letters<br>";
echo "" . $klinkers . "  klinkers<br>";
echo "" . $woorden . " woorden<br>";
echo "" . $leestekens . " leestekens<br>";
echo "" . $count . " tekens<br>";


in een nieuwe pagina wordt geopend wanneer ik op bereken klik?
Want ik kom er echt niet uit.
Je zou het in een sessie kunnen zetten en op die andere pagina de sessie opvragen in je input veld?
Ik heb je lange stukken code even iets ingekort.
<?php
$arr_klinkers = array('a', 'o', 'i', 'e', 'u');
$klinkers = 0;
$i = 0;
while($i<$count)
{
$klinkers = (in_array(strtolower($tekst[$i]), $arr_klinkers)) ? $klinkers + 1 : $klinkers;
$i++;
}

$arr_letters = range('a', 'z');
$letters = 0;
$k = 0;
while($k<$count)
{
$letters = (in_array(strtolower($tekst[$k]), $arr_letters)) ? $letters + 1 : $letters;
$k++;
}

$arr_leestekens = array('.', ',', ':', ';', '"', '|', '-', '{', '}', '!', '?', '~', '&', '*', '$', ')', '(', '=', '+', '[', ']', '%', '_', '@');
$leestekens = 0;
$m = 0;
while($m<$count)
{
$leestekens = (in_array($tekst[$m], $arr_leestekens)) ? $leestekens + 1 : $leestekens;
$m++;
}
?>
Okee ik zie het. Ziet er veel beter uit.
Maar hoe werk ik met sessies?
Het laatste wat ik nog moet doen is dat die uitkomst geopend wordt in een nieuwe pagina.
Dit was ook een leuke functie hiervoor geweest.

Reageren