Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Powtarzajace Sie Dane W Formularzu
mass
post
Post #1





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 3.02.2003

Ostrzeżenie: (0%)
-----


Mam formularz.

Cytat
for($i=1;$i<=10;$i++) {
<input type=\"text\" name=\"konto[$i]\" size=30>
}


Sklada sie z 10 pol.
W kazdym z tych pol powinny byc wpisane rozne informacje.

W jaki sposob wychwycic powtarzajace sie pola, jesli ktos wpisze np w 3 polach to samo czy w 2.
Nie dopuscic do wyslania formularza pokazac bledy ze te pola zawieraja takie same dane.
W jaki posob to sprawdzic.

pozdr.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
mike
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

Ostrzeżenie: (0%)
-----


Trzeba było tak od razu (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) . Proponuję coś takiego"
  1. <?php
  2. function AllDiffrent( $arrTablica )
  3. {
  4. $arrResult = array();
  5. $arrTemp = array_count_values( $arrTablica );
  6. foreach( $arrTemp as $mixKey => $mixValue )
  7. {
  8. if( $mixValue > 1 )
  9. {
  10. foreach( $arrTablica as $mixKey2 => $mixValue2 )
  11. {
  12. if( $mixKey == $mixValue2 )
  13. {
  14. $arrResult[ $mixKey ][] = $mixKey2;
  15. }
  16. }
  17. }
  18. }
  19. return $arrResult;
  20. }
  21. ?>

A działa to w ten sposób:
  1. <?php
  2. $tab[] = &#092;"ok\";
  3. $tab[] = &#092;"ok2\";
  4. $tab[] = &#092;"ok\";
  5. $tab[] = &#092;"ok\";
  6. $tab[] = &#092;"ok2\";
  7. $tab[] = &#092;"ok2\";
  8. $tab[] = &#092;"ok\";
  9. $tab[] = &#092;"ok3\";
  10.  
  11. echo '<pre>';
  12. print_r( $tab );
  13. echo '</pre>';
  14.  
  15. $tab = AllDiffrent( $tab );
  16.  
  17. echo '<pre>';
  18. print_r( $tab );
  19. echo '</pre>';
  20. ?>

Wynik przykładu:
Cytat
Array
(
    [0] => ok
    [1] => ok2
    [2] => ok
    [3] => ok
    [4] => ok2
    [5] => ok2
    [6] => ok
    [7] => ok3
)

Array
(
    [ok] => Array
        (
            [0] => 0
            [1] => 2
            [2] => 3
            [3] => 6
        )

    [ok2] => Array
        (
            [0] => 1
            [1] => 4
            [2] => 5
        )

)

Czyli watrość "ok" powtarz się na pozycji 0,2,3,6 a wartość "ok2" na pozycjach 1,4,5. Wartości "ok3" nie ma nigdzie jako klucza więc występuje tylko raz. Mam nadzieję że o to chodziło.
Pozdrawiam. Mike.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 8.10.2025 - 19:51