нубу подскажите, по скрипту простому)

Тема в разделе "PHP", создана пользователем doxx, 3 фев 2010.

Модераторы: latteo
  1. doxx

    doxx |||llll|||||llll|||

    Регистр.:
    18 фев 2009
    Сообщения:
    1.059
    Симпатии:
    212
    Пхп не знаю совсем, прошу совета..
    код
    PHP:
    <?
    # получаем данные и отсекаем пробельные символы в начале и конце:
    $name = @ trim ($_POST['name']);
    $contact = @ trim ($_POST['contact']);
    $message = @ trim ($_POST['message']);
    # проверка, переданы ли все данные


    if (! $name) exit ('111');
    if (! 
    $contact) exit ('222');

    вот тут я добавил проверку, простую проверку, заполнены ли поля, если не заполнены, выдает текст 111 или 222 в зависимости от поля...

    Хочу добавить проверку третьего поля, допустим чтобы там были одни цифры и буквы, если нет такого выдает текст 333
    вот добавляю строку
    PHP:
    if (!preg_match[a-z,0-9$message) exit ('333');
    выдает ошибку именно в этой строке, что не так я делаю?
     
  2. EnGeLs

    EnGeLs Постоялец

    Регистр.:
    30 апр 2008
    Сообщения:
    87
    Симпатии:
    21
    PHP:
    if (!preg_match("/^([a-z0-9]+)$/",$message)) exit ('333');
     
    doxx нравится это.
  3. doxx

    doxx |||llll|||||llll|||

    Регистр.:
    18 фев 2009
    Сообщения:
    1.059
    Симпатии:
    212
    спасибо, вроде пашет:)
    а как сделать тоже самое, но на проверку количества введенных цифр.
    например, если введенных цифр менее 5 то выдает сообщение
     
  4. EnGeLs

    EnGeLs Постоялец

    Регистр.:
    30 апр 2008
    Сообщения:
    87
    Симпатии:
    21
    Проверка чисто на числа, не менее 5 цифр:
    PHP:
    if (!preg_match("/^([0-9]{5,})$/",$message)) exit ('333');
    {5,} - значит 5 и более(до бесконечности). Если надо от 5 до 10 то {5,10} например.
     
    doxx нравится это.
  5. doxx

    doxx |||llll|||||llll|||

    Регистр.:
    18 фев 2009
    Сообщения:
    1.059
    Симпатии:
    212
    еще вопрос

    скрипт отправляет запросы
    PHP:
    while(!feof($fp))
       {
       
    sleep(5);
       
    $string=fgets($fp1024);
    с задержкой 5 секунд между запросами.

    Как сделать так чтобы задержка( цифра 5 :(
    1) Бралась рандомно, например от 3 до 10 секунд была
    2) Бралась рандомно из файла или из написанных мною цифр.
    ( например 1.2.3.4 и из них рандомно выбиралась )
     
  6. PHP_Master

    PHP_Master

    Регистр.:
    3 фев 2008
    Сообщения:
    2.647
    Симпатии:
    590
    1. sleep(rand(3, 10));
    2. "чего только люди не придумают"
     
    doxx нравится это.
  7. a_n_d_y

    a_n_d_y

    Регистр.:
    26 мар 2006
    Сообщения:
    465
    Симпатии:
    61
    PHP:
    sleep(rand(4));
    Добавлено через 1 минуту
    Это если из 1.2.3.4

    Добавлено через 1 минуту
    Можно нескромный вопрос. А зачем?
     
    doxx нравится это.
  8. serjinio

    serjinio

    Регистр.:
    10 май 2007
    Сообщения:
    439
    Симпатии:
    49
    вместо
    $name = @ trim ($_POST['name']);
    надо $name = !empty($_POST['name'])? trim($_POST['name']:(NULL;
    ,чтоб убить собаку :)
     
  9. doxx

    doxx |||llll|||||llll|||

    Регистр.:
    18 фев 2009
    Сообщения:
    1.059
    Симпатии:
    212

    что это такое
     
  10. Ins1ne

    Ins1ne Постоялец

    Регистр.:
    26 авг 2009
    Сообщения:
    89
    Симпатии:
    25
    Это значит: "Если не пустая переменная $_POST['name'], тогда выполнить trim($_POST['name']), в противном случае $_POST['name'] = NULL"
    А это значит, что если у тебя нет еще переменной $_POST['name'], а ты уже собриаешься удалять лишние пробелы функцией trim($_POST['name']), то у будут выскакивать ворнинги о том, что переменная не определена. Собака ставиться чтобы избежать этих ворнингов, но это как бы не корректно, т.е - костыль.