За последние 24 часа нас посетили 16962 программиста и 1312 роботов. Сейчас ищут 1423 программиста ...

Подсчет строк

Тема в разделе "Вопросы от блондинок", создана пользователем xak2, 2 янв 2007.

  1. xak2

    xak2 Guest

    У меня есть например такой скрипт
    $b = "a b c d e";
    list($a) = explode(" ", $b);
    Как мне правельно сделать
    while()
    {
    }
    И как мне подсчитать количество полученых $a?
     
  2. Mavir

    Mavir Guest

    Если хочешь через цикл, то заводишь переменную и при каждой иттерации добавляешь единицу.
    А вообще можно так print count($a);
     
  3. Anonymous

    Anonymous Guest

    //Плачет.
    Ну неужели так сложно просто подумать? =((
    1. Открываем мануал:
    1.1 Как видим, результатом является массив....
    1.2 Это уже говорит о том, что вызов list($a) - излишен..
    2. Открываем в мануале Функции работы с массивами
    2.1 Видим строчку: count -- Посчитать количество элементов массива или количество свойств объекта.

    Неужели Это — ТАК сложно?
     
  4. xak2

    xak2 Guest

    Что искать когда незнаеш что тебе нужно?
    У меня почемуто неработает.
    PHP:
    1. <?php
    2. $a = "a b c d e";
    3. array explode(" ", $a);
    4. ?>
    Ошибка:
    Код (Text):
    1. Parse error: parse error, unexpected T_STRING, expecting '(' in C:\AppServ\www\test.php on line 3
    Делаю
    PHP:
    1. <?php
    2. $a = "a b c d e";
    3. $b = array(explode(" ", $a));
    4. echo $b;
    5. ?>
    Получаю:
    Код (Text):
    1. Array
    Раскажи мне пожалуйста как мне создать масив из одной целой строки.
     
  5. avm

    avm Активный пользователь

    С нами с:
    21 сен 2006
    Сообщения:
    597
    Симпатии:
    0
    Адрес:
    Москва
    поищите другое занятие например. Займитесь спортом, или попробуйте лудить кастрюли какие-нибудь... Мало-ли -- может что-то понравится.
    Все равно к программированию у вас никаких данных не прослеживается.
     
  6. Anonymous

    Anonymous Guest

    Мдя.. аrray в мануале в строке описания означает (как и в сотнях других документашек) что типом возвращаемого значения функции является array = массив. т.е.
    $a = explode(' ',$a);
    уже даст тебе массив $a.
    Массивы через echo тоже не выводятся. Для этого есть функция print_r()
    А зачем что то делать, если незнаешь что тебе нужно?
     
  7. xak2

    xak2 Guest

    Я для этого и обратился сюда чтобы узнать каким путем мне пойти.
    Оффтоп, неможеш помочь вообще промолчалбы. Москву построили не за один день.
     
  8. draak

    draak Guest

    PHP:
    1. $a = "a b c d e";
    2. echo count(explode(" ", $a));
    3. foreach(explode(" ", $a) as $var) echo $var;
     
  9. Mavir

    Mavir Guest

    draak, explode в foreach не нужно вставлять.
     
  10. Vladson

    Vladson Старожил

    С нами с:
    4 фев 2006
    Сообщения:
    4.040
    Симпатии:
    26
    Адрес:
    Estonia, Tallinn
    Ты не прав, программирование это как и спорт и как искуство, если от природы не дано то то нет смысла и пытаться, только зря потратишь годы на изучение а в итоге так ничего и не выдет...
     
  11. xak2

    xak2 Guest

    PHP:
    1. <?php
    2. $a = "a b c d e";
    3. $b = explode(" ", $a);
    4. for ($i=0;$i<=count($b);$i++)
    5. {
    6.     $c = $i-1;
    7.     echo "$b[$c]<br>";
    8. }
    9. ?>
    Спасибо Горбунов Олег!
    Все заработало. Но это часть проблемы, как мне теперь сравнить данные из формы с данными в масиве? т.е. в масиве содержатся пароли, пользователь вводит пароль и если таков есть в масиве то пользователь проходит дальше?
     
  12. Anonymous

    Anonymous Guest

    xak2, открою великую тайну... это делается еще проще:
    PHP:
    1.  
    2. <?php
    3. $a = "a b c d e";
    4. $b = explode(" ", $a);
    5. foreach($b as $c) echo $c.'<br/>';
    6. ?>
    //Off: Блин, что ж вы все так Мускуля то боитесь, а?

    if (in_array($pass,$b)) { ... }

    // А применить метод поиска в мануале предложенный мной, не пробоввал? Там есть строчка:
    in_array -- Проверить, присутствует ли в массиве значение
    Сложно прочесть?
     
  13. Vladson

    Vladson Старожил

    С нами с:
    4 фев 2006
    Сообщения:
    4.040
    Симпатии:
    26
    Адрес:
    Estonia, Tallinn
    Ты первый раз на этом форуме ?
    http://php.ru/forum/viewtopic.php?t=1732 именно и массив именно с проверкой из формы, уж за столько времени на форуме можно было бы в него не только писать но и читать пробовать тоже...
     
  14. avm

    avm Активный пользователь

    С нами с:
    21 сен 2006
    Сообщения:
    597
    Симпатии:
    0
    Адрес:
    Москва
    как раз только мой совет и сможет помочь... да и сколько уже можно молчать-то? задрали уже абсолютно тупые вопросы xak2!
    и не такие как ты...

    p.s. Форум превращается в детский сад для умственно ленивых детей.
     
  15. DarkElf

    DarkElf Активный пользователь

    С нами с:
    22 окт 2006
    Сообщения:
    1.632
    Симпатии:
    0
    xak2

    попытайся читать мануал.

    вот есть у тебя задача.
    условно говоря, это процесс, который надо разделить на этапы.
    1) получение данных из формы
    2) поиск в массиве ключа, соответствуюшего логину. Открываем мануал, раздел: работа с массивами, ищем функцию, которая выполняет подобную задачу. Например, подойдет array_key_exests
    Скармливаем ей логин, вернула true - ключ в массиве есть. false - пользователь не зарегистрирован либо ошибка при вводе данных
    3) сравниваем значение массива с введенным key (если он существует) и введенного пользователем пароля. Совпадает - пользователь прошел проверку подлинности. Не совпадает - где-то ошибка.

    Неплохо вначале просто в том же блокноте расписывать.
     
  16. Anonymous

    Anonymous Guest

    Еще один не читает топик перед постингом... и мануал читает плохо.
     
  17. Mavir

    Mavir Guest

    Не плохо было бы и Вам почитать мануал. Функция array_key_exist проверяет, есть ли ключ в массиве. А при передаче данных GET и POST пароль или логин не будет записан как значение ключа.
     
  18. DarkElf

    DarkElf Активный пользователь

    С нами с:
    22 окт 2006
    Сообщения:
    1.632
    Симпатии:
    0
    Mavir

    увы, опечатки в названиях функций, приводимых по памяти, моя беда.. следствие изучения французского языка в школе/институте, вместо английского..=(

    Горбунов Олег

    пост был про вторую проблему со сравнением..

    PHP:
    1. <?
    2. if(!array_key_exist($_POST['login'],$users)){
    3. print("Указанного Вами логина не существует. Проверьте правильность его написания, либо зарегистрируйтесь");
    4. }
    5. else{
    6.   if($users[$_POST['login']] != md5($_POST['pwd']){
    7.   print("Введенный Вами пароль неверен");
    8.   }
    9.   else{
    10.   //авторизация прошла успешно
    11.   }
    12. }
    13. ?>
     
  19. Anonymous

    Anonymous Guest

    DarkElf, array_key_exists в ключе заданного вопроса не подходит, необходимо использовать in_array, о чем я написал несколько постов назад.
     
  20. DarkElf

    DarkElf Активный пользователь

    С нами с:
    22 окт 2006
    Сообщения:
    1.632
    Симпатии:
    0
    Горбунов Олег

    ммм, там массив только из паролей....
    незадача
     
  21. av.s

    av.s Активный пользователь

    С нами с:
    23 янв 2007
    Сообщения:
    28
    Симпатии:
    0
    я рыдал...
    сочувствую xak2...
    нет, ну реально... это ж матчасть... кто как не ты сам должен здесь себе помочь.
    посмотрев сотню раз как решаются примеры у доски, ты не научишься их решать сам, а только выйдя к доске...
    я понимаю там грабли с архтектурой приложения или технологией, но на таких задачках учатся азам языка...