Funkcja strlen - problem

1

Witam,

Potrzebuje zrobić prosty kalkulator ilości znaków. A konkretnie, chce aby liczba znaków z pola1 sumowana sie z liczba znaków z pola2. O ile udało mi nie sumować znaki z jednego pola to z drugim idzie cieżko.

<html>
<head>
<title>Kalkulator znaków</title>
</head>
<form action="kalku.php" method="post">
<table border="5" bordercolor="grey">
<tr>
<td width="50" valign="top">Pole 1:</td>
<td width="50"><input name="pole1" value="" type="text" size="30" maxlenght="20"></td>
</tr>
<tr>
<td width="50" valign="top">Pole 2:</td>
<td width="50"><input name="pole2" value="" type="text" size="30" maxlenght="20"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td><input type="submit" name="suma" value="suma"></td>
</tr>
</table>
</form>
<br><br><br><br>
Suma znaków: <?php print ((strlen($_POST['pole1' + 'pole2']))); ?>
6

Tak piszę na sucho, więc może to nie zadziała (zaraz idę spać i nie będę tego sprawdzać), ale wydaje mi się, że błędem jest próba zsumowania dwóch elementów tablicy. To, co robisz to próba zsumowania nazw indeksów, a Ty chcesz się dostać do wartości zapisanych pod tymi indeksami.

Napisałeś (strlen($_POST['pole1' + 'pole2'])); - czyli inaczej biorąc można to zapisać tak: (strlen($_POST['pole1pole2']));.

To, co Ty chcesz zrobić, można zapisać na 2 sposoby:

  1. (strlen($_POST['pole1'].$_POST['pole2'])); - tutaj pobierasz długość ciągu będącego złączeniem $_POST['pole1] i '$_POST['pole2']
    albo
  2. strlen($_POST['pole1']) + strlen($_POST['pole2']); - w tym wariancie osobno obliczasz długość pole1 i pole2, a potem sumujesz te wartości
1
cerrato napisał(a):

Tak piszę na sucho, więc może to nie zadziała (zaraz idę spać i nie będę tego sprawdzać), ale wydaje mi się, że błędem jest próba zsumowania dwóch elementów tablicy. To, co robisz to próba zsumowania nazw indeksów, a Ty chcesz się dostać do wartości zapisanych pod tymi indeksami.

Napisałeś (strlen($_POST['pole1' + 'pole2'])); - czyli inaczej biorąc można to zapisać tak: (strlen($_POST['pole1pole2']));.

To, co Ty chcesz zrobić, można zapisać na 2 sposoby:

  1. (strlen($_POST['pole1'].$_POST['pole2'])); - tutaj pobierasz długość ciągu będącego złączeniem $_POST['pole1] i '$_POST['pole2']
    albo
  2. strlen($_POST['pole1']) + strlen($_POST['pole2']); - w tym wariancie osobno obliczasz długość pole1 i pole2, a potem sumujesz te wartości

Wiedziałem że jakoś z tym plusem podziałam, tylko nie wiedziałem w jakiej formie to zapisać. Dziękuję za pomoc!

1 użytkowników online, w tym zalogowanych: 0, gości: 1