[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: помогите разобраться с массивом...
maybe_nt
Есть массив, включающий в себя уйму слов (берутся из текстового файла). Он отсортирован по алфавиту. у каждого элемента есть чекбокс для того чтобы пользователь мог выбрать только те элементы массива которые ему нужны и далее работать только с ними... проблема заключается в том, что из-за того, что слов очень очень много установка флажка в чекбокс даже на быстрой машине происходит несколько секунд... я думаю, можно ли как-нибудь выводить элементы этого массива частями...по маске...например, отдельно слова на букву "А", отдельно на "Б" и т.д.



Спасибо огромное!



Спустя 48 минут, 1 секунда (12.04.2009 - 19:50) sergeiss написал(а):
Цитата (maybe_nt @ 12.04.2009 - 19:02)
я думаю, можно ли как-нибудь выводить элементы этого массива частями...по маске...например, отдельно слова на букву "А", отдельно на "Б" и т.д.

Спасибо огромное!

"Спасибо не булькает" smile.gif

Выводить можно, вариантов много. Или вопрос был не в этом, а чтобы получить готовый код???

Спустя 29 минут, 55 секунд (12.04.2009 - 20:20) maybe_nt написал(а):
ну что это возможно я понимаю...на теоретичесокм уровне... а код..ну хотя бы примерно как это делается....

Спустя 12 минут, 23 секунды (12.04.2009 - 20:33) modobaks написал(а):
Какие то наработки уже есть у Вас?

Спустя 2 минуты, 41 секунда (12.04.2009 - 20:35) maybe_nt написал(а):
Ну вот так я вывожу массив:

echo '<form name="choose" method="post" action="2.php">';
$content=explode (" ", $result);
for ($i = 0; $i < count($content); $i++)
$slova[$content[$i]]++;
foreach ($slova as $key => $val)
echo '<input type=checkbox name="cat[]" value='.$key.'>'.$key.' - '.$val.'<br>';
echo '<p><input type=text name="category_name"><br><input type="submit" value="Отправить"></form>';
$count=array($val);

но я не знаю как вывести его не целиком...может рзбить на 33 массива по первой букве слов? но как эо селать если текст в массиве всегда разный...то есть я не знаю количество слов......=(

Спустя 8 минут, 28 секунд (12.04.2009 - 20:44) modobaks написал(а):
Может тебе это функция array_slice наведет на мысли

Спустя 3 минуты, 28 секунд (12.04.2009 - 20:47) maybe_nt написал(а):
про эту функцию я думал.... но проблема ведь в том, что array_slice требует указания количества отсекаемых элементов...а я не знаю сколько именно будет слов на букву А... если бы я мог это определять то не было бы и вопроса...

Спустя 9 минут, 21 секунда (12.04.2009 - 20:57) modobaks написал(а):
Дак подсчитай! – например отсортируй, прогони через массив и определи сколько слов начинается на ту или иную букву

Спустя 16 минут, 29 секунд (12.04.2009 - 21:13) maybe_nt написал(а):
массив отсортирован...так а как посчитать сколько то? вот в этом и проблема...

Спустя 6 минут, 5 секунд (12.04.2009 - 21:19) sergeiss написал(а):
Цитата (maybe_nt @ 12.04.2009 - 20:35)
Ну вот так я вывожу массив:

echo '<form name="choose" method="post" action="2.php">';
$content=explode (" ", $result);
for ($i = 0; $i < count($content); $i++)
    $slova[$content[$i]]++;
foreach ($slova as $key => $val)
        echo '<input type=checkbox name="cat[]" value='.$key.'>'.$key.' - '.$val.'<br>';
echo '<p><input type=text name="category_name"><br><input type="submit" value="Отправить"></form>';
$count=array($val);

А в чем проблемы? Проверяй первую букву, и если не нужная тебе, то просто переходи на следующий цикл (см. комментарии в тексте).

PHP
echo '<form name="choose" method="post" action="2.php">';
$content=explode (" "$result);
for (
$i 0$i count($content); $i++) 
    
$slova[$content[$i]]++; 
$first_letter="г"// вот тут указываем, какая буква нужна
foreach ($slova as $key => $val)
{
   if( 
substr$val01) != $first_letter ) continue; // если слово начинается на другую букву, то пропускаем весь цикл; правда, тут нету учета регистра
         
echo '<input type=checkbox name="cat[]" value='.$key.'>'.$key.' - '.$val.'<br>';
}
echo 
'<p><input type=text name="category_name"><br><input type="submit" value="Отправить"></form>';
$count=array($val);

Спустя 24 минуты, 30 секунд (12.04.2009 - 21:44) maybe_nt написал(а):
спасибо!! то, что нужно!!!!!!=))

Спустя 39 минут, 23 секунды (12.04.2009 - 22:23) modobaks написал(а):
ну вот пришел sergeiss и все решил, ... biggrin.gif

Спустя 18 минут, 31 секунда (12.04.2009 - 22:42) sergeiss написал(а):
Цитата (modobaks @ 12.04.2009 - 22:23)
ну вот пришел sergeiss и все решил, ... biggrin.gif

Прозвучало примерно как "пришел поручик Ржевский и всё опошлил" biggrin.gif biggrin.gif biggrin.gif
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.