Программирование на php. Общие вопросы.

(Ответов: 402, Просмотров: 32552)
Страница 8 из 41 Первая ... 67891018 Последняя
  1. {YaGoo} Аватар для sinneren
    • Регистрация: 10.11.2011
    • Сообщений: 285
    • Репутация: 63
    kvins, вообще по-умолчанию регистр используется и модификатор i отменяет это.
    А правильнее, кажется, будет такой паттерн: '/(canvas)/'
    • 0
  2. Новичок
    • Регистрация: 28.06.2011
    • Сообщений: 19
    • Репутация: 0
    Ребята помогите пожалуйста. Я не программист.
    Есть форма обратной связи, работала, потом почему-то перестала.
    При заполнении формы пишет следующее
    "'Произошла внутренняя ошибка сервера. Повторите позже или позвоните нам по телефону: (111) 1111-111"
    Знакомый (жадный) программист сказал что "защита от ботов поломалась" и ещё про эту защиту сказал что там без участия пользователя генерируется код в браузере и отправляется.
    Я так понял что это должно быть не сложно?
    Вот код:
    PHP код:
    <?
    require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");
    $APPLICATION->SetTitle("Обратная связь");
        
    $thankyou FALSE;
        if(isset(
    $_POST['name'])) {
            if (empty(
    $_REQUEST['special_check']) || ($_SESSION['special'][$_REQUEST['special_check']] != 'check'))
            {
                
    $error[] = 'Произошла внутренняя ошибка сервера. Повторите позже или позвоните нам по телефону: (111) 1111-111 ';
                unset(
    $_SESSION['special']);
            }
            elseif(empty(
    $_POST['name'])||empty($_POST['message'])||empty($_POST['email'])) {
                
    $error[] = 'Не заполнены обязательные поля.';
            }
            else {
                
    $body "На сайте www.site.ru заполнена форма обратной связи. \n";
                
    $headers  'MIME-Version: 1.0' "\r\n";
                
    $headers .= 'Content-type: text/plain; charset=cp1251 '."\r\n";
                
    $headers .= 'From: noreply@site.ru '."\r\n";
                
    $to 'hh@live.ru';
                
    $subject "Заполнена форма обратной связи";
                
    $body .= "Имя: ".strip_tags($_POST['name'])."\n";
                
    $body .= 'E-mail: '.strip_tags($_POST['email'])."\n";
                if(!empty(
    $_POST['phone'])) $body .= 'Номер телефона: '.strip_tags($_POST['phone'])."\n";
                
    $body .= 'Сообщение: '.strip_tags($_POST['message'])."\n";
                if(
    is_array($_POST['connect'])) $body .= 'Предпочтительный способ связи: '.(($_POST['connect']['phone']==TRUE)?'по телефону ':'').(($_POST['connect']['email']==TRUE)?'по электронной почте':'')."\n";
                
    //$subject = mb_convert_encoding($subject,'CP1251');
                //$body = mb_convert_encoding($body,'Windows-1251','utf-8');
                
    mail($to$subject$body$headers) or $error = array('src'=>'write','0'=>'Ошибка при отправке письма');
                
    $thankyou 'Заявка успешно отправлена!';
            }
        }
      
    ?> 
    <h2>Обратная связь</h2>
     <?
    if(!isset($_SESSION['referer'])) $_SESSION['referer'] = $_SERVER['HTTP_REFERER'];
    elseif(
    $_SERVER['HTTP_REFERER'] != 'http://'.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'])$_SESSION['referer'] = $_SERVER['HTTP_REFERER'];
    ?> <? if($thankyou):?> 
    <script>
        alert('<?=$thankyou?>');
        window.location.href = '<?=$_SESSION['referer']?>';
    </script>
     <? unset($_POST);?> 
     <? elseif($error):?> 
    <script>
        alert('Ошибка при обработке формы:\n <?=implode("<br />",$error)?>');
    </script>
     <? endif;?> 
     <?
    // spechial anti-bot check
        
    $special_check_first rand(1,10000);
        
    $special_check_second rand(1,10000);
        
    $special_check_third rand(1,10000);
        
    $_SESSION['special'][($special_check_first $special_check_second)*$special_check_third] = 'check';
    ?> 
    <script language="JavaScript" type="text/javascript"><!-- // --><![CDATA[
        function special_check_cred()
        {
            var special_1 = <?=$special_check_first?>;
            var special_2 = <?=$special_check_second?>;
            var special_3 = <?=$special_check_third?>;
            var result = (special_1+special_2)*special_3;
            document.write("<in"+"put ty"+"pe=hid");
            document.write("den na"+"me=special_c"+"heck ");
            document.write("va"+"lue="+result+" />");
            
        }
        // ]]></script>
    <div class="feedback_page">
    <form action="" method="post"> 
        <div class="item">     <label>Ваше имя <span>*</span></label> <input type="text" class="inputbox" name="name" value="<?=@$_POST['name']?>" /></div>
       
        <div class="item">     <label>Почтовый адрес <span>*</span></label> <input type="text" class="inputbox" name="email" value="<?=@$_POST['email']?>" /> </div>
       
        <div class="item">     <label>Номер телефона</label> <input type="text" class="inputbox" name="phone" value="<?=@$_POST['phone']?>" /> </div>
       
        <div class="item">     <label>Сообщение<span>*</span></label> <textarea name="message"><?=@$_POST['message']?>"</textarea> </div>
       Предпочитаемый способ связи: 
        <br />
       <span class="tel">Телефон</span><input type="checkbox" name="connect[phone]" value="TRUE"<?=(($_POST['connect']['phone']==TRUE)?'checked="checked"':'')?>  /> <span class="mail">Почта</span><input type="checkbox" name="connect[phone]" value="TRUE"<?=(($_POST['connect']['email']==TRUE)?'checked="checked"':'')?>  />
        <div class="button"><input type="submit" value="Отправить" /></div>
       
    <script language="JavaScript" type="text/javascript"><!-- // --><![CDATA[
            special_check()
    // ]]></script>
     </form></div>
     <? $feedback_page TRUE;?> <?require($_SERVER["DOCUMENT_ROOT"]."/bitrix/footer.php");?>
    • 0
  3. Orange Аватар для aidem
    • Регистрация: 11.11.2010
    • Сообщений: 502
    • Репутация: 127
    • Webmoney BL: ?
    Цитата Сообщение от Александр_ Посмотреть сообщение
    При заполнении формы пишет следующее
    При заполнении или при отправке?
    В вашем случае по моему мнению нужно либо к хостеру стучаться, смотреть логи, или просить помощи у Битрикс поддержки (если я угадал что это Битрикс).
    • 0
  4. Новичок
    • Регистрация: 28.06.2011
    • Сообщений: 19
    • Репутация: 0
    Конечно при отправке.
    А чего там догадываться. Конечно это битрикс.
    Техподдержка не поможет ибо модуль писался "умельцами"
    • 0
  5. [web-developer] Аватар для cOAPerator
    • Регистрация: 22.02.2011
    • Сообщений: 615
    • Репутация: 111
    • Webmoney BL: ?
    Ребята, подскажите плиз такую вешь:
    у меня в бд есть колонка test со значениями например "1,13,7" "22,4,9" "17,400,0" "56,293,13" и т д.
    В каждом поле свои значения через запятую прописаны.
    мне надо сделать выборку всех строк в которых в поле test встречается число(!) 13 например.
    есть какая нить функция в php для этого? заранее спасибо.

    ---------- Сообщение добавлено 21:49 ---------- Предыдущее 20:13 ----------

    сам ответ нашел:)
    просто используем конструкцию SELECT * FROM test_table WHERE test LIKE '%test1%'
    LIKE определяет, совпадает ли указанная символьная строка с заданным шаблоном. Шаблон может включать обычные символы и символы-шаблоны.
    • 0
  6. Дипломник Аватар для vlasoff
    • Регистрация: 10.08.2012
    • Сообщений: 211
    • Репутация: 42
    Цитата Сообщение от cOAPerator Посмотреть сообщение
    просто используем конструкцию SELECT * FROM test_table WHERE test LIKE '%test1%'
    Таким запросом вы получите все числа, в которых присутствует 13, в том числе те, которые не равны 13, например, 113, 131 и т.д., правильнее было бы наверное так:

    Код:
    SELECT *
    FROM test_table
    WHERE test LIKE '%,13' OR test LIKE '13,%' OR test LIKE '%,13,%' OR test LIKE '13'
    • 0
  7. [web-developer] Аватар для cOAPerator
    • Регистрация: 22.02.2011
    • Сообщений: 615
    • Репутация: 111
    • Webmoney BL: ?
    vlasoff, да это я уже понял, но, задача была сделать выборку из поля set в запросе. И да, согласен с Вашим вариантом, он исключает включения.
    Может есть вариант укоротить как то данную строку? на ум приходит только использовать регулярки
    • 0
  8. {YaGoo} Аватар для sinneren
    • Регистрация: 10.11.2011
    • Сообщений: 285
    • Репутация: 63
    Не могу сделать одну вещь: нужно загруппировать элементы в цикле по 3 штуки, т.е. Открыть div, вставить 3 элемента, закрыть div. Кто может помочь? Пытаюсь сделать как-то так, но не выходит:
    PHP код:
    <?$i=0;foreach($j as $k):?>
        <?if(($i == 0) || ($i == 0)):?>
            <div>
        <?endif?>
            #тут вывод каких-то элементов,будь то divы,картинки или прочее html содержимое.
        <?if(($i == 0) && ($i != 0)):?>
            </div>
        <?endif;$i++?>
    <?
    endforeach?>
    Разобрался
    PHP код:
    <?$i=1;foreach($j as $k):?>
        <?if(($i == 1) || ($i == 0)):?>
            <div>
        <?endif?>
            #тут вывод каких-то элементов,будь то divы,картинки или прочее html содержимое.
        <?if(($i == 0) || ($i == count($j))):?>
            </div>
        <?endif;$i++?>
    <?
    endforeach?>
    • 0
  9. Опытный Аватар для hromov
    • Регистрация: 08.11.2010
    • Сообщений: 341
    • Репутация: 122
    • Webmoney BL: ?
    Не знаю в эту ли тему попал или нет есть вопрос до ужаса простой по JS( сам чайник просто в этом). Необходимо сделать так что-бы ссылки на ПП выносились отдельным JS файлом. То есть если домен ПП поменялся можно просто сменить ссылку в JS файле. Если можно на пальцах,что в index вставлять, что в js файл)
    • 0
  10. {YaGoo} Аватар для sinneren
    • Регистрация: 10.11.2011
    • Сообщений: 285
    • Репутация: 63
    hromov,ну,умеете же читать, сделаете вывод сами туда попали или нет.

    Извиняюсь, в плохом настроении пишу, от этого так грубовато вышло. Короче, оформите лучше отдельную тему, с тем что именно вам нужно, на каком языке и как это выглядеть должно, всё подробнее. Общие вопросы они скорее по методам, синтаксису, а у Вас даже не пойму, что нужно.
    • 1

    Спасибо сказали:

    PaulSchuher(06.11.2012),
Страница 8 из 41 Первая ... 67891018 Последняя

Похожие темы

Темы Раздел Ответов Последний пост
Веб программирование на Php, MySQL, Ajax. Программирование на C#
Создание сайтов 3 31.05.2011 01:53
Веб программирование на Php, MySQL, Ajax. Программирование на C#
Реклама партнерских программ 3 31.05.2011 01:53
Качественное программирование на заказ
Создание сайтов 2 13.09.2010 16:02
Веб-программирование [php, Xhtml, Css, Javascript]
Другая работа 0 28.02.2010 23:10

У кого попросить инвайт?

Вы можете попросить инвайт у любого модератора:

Информеры