[JavaScript, AJAX] Задай вопрос, получи ответ

Discussion in 'PHP' started by banned, 9 Jun 2007.

Thread Status:
Not open for further replies.
  1. astrologer

    astrologer Elder - Старейшина

    Joined:
    30 Aug 2007
    Messages:
    837
    Likes Received:
    267
    Reputations:
    59
    Именно на Java нет. На JS - написать можно за 5 минут, только вот отправлять на мыло он не умеет.
     
  2. ZET36

    ZET36 Elder - Старейшина

    Joined:
    8 Oct 2007
    Messages:
    250
    Likes Received:
    49
    Reputations:
    0
    хых можно запрос отправить на какуюнибуть чужу форму для отправки мыла)) я помню давно так мыльный флудер на js писал))


    а скрипт опроса можна написать так
    (баллы начисляются в куки, правильный ответ 2, при нескольких опросах придётся писать ещё накопитель для переменной баллов)
    HTML:
    <script>
    
    variant=0;
    
    function zet()
    {
    
    if (variant==('2')) {
     document.cookie=('balli=1');}
    
    else{
    document.cookie=('balli=0');}
    
    alert(document.cookie);
    
    }
    </script>
    
    
    
    Ситуация в Туалете Кафешки очнь хочется пи-пи а в мужской туалет 
    
    очереь тянется ещё за 2 квартала а ближайший сартир в 10 кварталах
    <br>
    
    
    <form name=opros>
    1<INPUT TYPE="radio" NAME="opros" VALUE="1" onclick="variant=1"> 
    Конечно же дождусь очереди а если неполучится то небеда ведь мама 
    
    всегда надевает мне погузники , правдо вытереть попку будет некому
    <br>
    
    2<INPUT TYPE="radio" NAME="opros" VALUE="2" onclick="variant=2"> 
    Бля да делов то выйду и нассу за углом
    <br>
    
    3<INPUT TYPE="radio" NAME="opros" VALUE="3" onclick="variant=3"> 
    Попытаюсь дождаться а если неполучится незаметно нассу в стакан с 
    
    пивом . но вот как поступать в ситуации если  подойдёт офицантка и 
    
    попросит допить своё пиво так как кафэ закрывается я ещё непридумал
    <br>
    
    4<INPUT TYPE="radio" NAME="opros" VALUE="4" onclick="variant=4"> 
     Да мне по*** зайду в соседнюю дверь женского сратира и облегчусь там 
    
    а если бабы спросят " чо за ***ня?" скажу "Улыбнитесь вон туда 
    
    (показав на свой ***) ВАС СНИМАЕТ СКРЫТАЯ КАМЕРА!!
    <br>
    
    
    5<INPUT TYPE="radio" NAME="opros" VALUE="5" onclick="variant=5"> 
     Демонстративно нассу под стол кафешки а потом сяду и насру под 
    
    дверью этого сартира по тому что эти пидарасы админы кафэшки не учли 
    
    такой поворот то что может быть быть такая ***ня с очередью в сартир 
    
    ,будет им уроком ,пусть им будет стыдно за это
    <br>
    
    6<INPUT TYPE="radio" NAME="opros" VALUE="6" onclick="variant=6"> 
    Дождусь очереди (если обоссусь не беда вытру полотенцем делов то) 
    
    надену свои трусы себе на голову, притворясь террористом потом 
    
    запрусь один в сратире невпуская никого заминируя вход в сратир кучей 
    
    своего дерьма и буду вести перегаворы по освобождению туалета только 
    
    с Памелой Андерсон.
    Мои требования:
    1. 40 марок ЛСД, 25 порций мороженного , 3 Индийских лягушки , 3 
    
    негра, кельтский крест, белый халат с острым копюшоном, канистра 
    
    бензина и спички (для нескучного времяпровождения во время 
    
    переговоров)
    2. 200 картинок обнажонного "Михоила боярского" бутылка водки и крем 
    
    для рук (для продолжения банкета)
    3. 300 тонн эксриментов цирковых  собачек (хочу преподнести подарок 
    
    пожилой соседке которая с 12 ночи до 5 утра  крутит на всю громкость 
    
    Советские марши) 
    4. 24 Ездовых обезьянок в кавбойских костюмах и карета из тыквы как у 
    
    золушки (что бы я мог быстро и незамеченно скрыться через форточку с 
    
    места преступления)
    5. 1 говорящий попугай матершиннк (оставлю его в сратире и пусть он 
    
    дальше ведёт перегаворы что бы когда я удирал через форточку менты 
    
    думали что я ещё держу сартир  заминированным)
    
    </form>
    
    <input type=button name=ya value=Ответить Onclick=zet()>
    
    
    к стати свойство value у обьекта radio почемуто непашет(( я добавил ещё одну переменную что бы это решить
     
    #382 ZET36, 17 Mar 2008
    Last edited: 17 Mar 2008
  3. smOleg

    smOleg Banned

    Joined:
    30 Nov 2007
    Messages:
    69
    Likes Received:
    25
    Reputations:
    -5
    А как это сделать не подскажите? :confused: Я в JS не силен покачто
     
  4. ZET36

    ZET36 Elder - Старейшина

    Joined:
    8 Oct 2007
    Messages:
    250
    Likes Received:
    49
    Reputations:
    0
    smOleg хых я так и не понял что ты хочеш сделать но скрипт меняющий значения каждого свойства елемента в формме церез цикл написал))

    Code:
    <form name=zz>
    
    <input type=text value='ff'>
    <input type=text value='ff'>
    <input type=text value='ff'>
    <input type=text value='ff'>
    
    </form>
    
    <script>
    for (i=0; i<document.zz.elements.length;i++)
    {
    document.zz.elements[i].value='dd';
    }
    </script>
    
     
  5. smOleg

    smOleg Banned

    Joined:
    30 Nov 2007
    Messages:
    69
    Likes Received:
    25
    Reputations:
    -5
    такое я и сам могу. на каждом столбе примеры написаны

    вот как добратся к тегу <a> чтоб не по ID
     
  6. banned

    banned Banned

    Joined:
    20 Nov 2006
    Messages:
    3,324
    Likes Received:
    1,193
    Reputations:
    252
    window.event.srcElement.tagName == 'A'
     
  7. astrologer

    astrologer Elder - Старейшина

    Joined:
    30 Aug 2007
    Messages:
    837
    Likes Received:
    267
    Reputations:
    59
    Code:
    <html>
    <head>
    <style type="text/css">
    
    #menu div
    {
      float: left;
      margin-left: 3px;
      width:  40px;
      height: 30px;
    }
    
    .normal
    {
      border: #132 solid 1px;
      background: #396;
    }
    
    .active
    {
      background: #264;
      border: #000 solid 1px;
    }
    
    
    </style>
    
    <script type="text/javascript">
    
    function act(e)
    {
      var aim = e.target || e.srcElement,
      blocks = document.getElementById( 'menu' ).getElementsByTagName('div'),
      l = blocks.length;
    
      while(l--) blocks[l].className = 'normal';
      if(aim.nodeName == 'DIV' && aim.parentNode.id == 'menu') aim.className = 'active';
    }
    
    </script>
    
    </head>
    <body onclick="act(event)">
    
    <div id="menu">
      <div class="normal"></div>
      <div class="normal"></div>
      <div class="normal"></div>
      <div class="normal"></div>
      <div class="normal"></div>
    </div>
    
    </body>
    </html>
     
  8. smOleg

    smOleg Banned

    Joined:
    30 Nov 2007
    Messages:
    69
    Likes Received:
    25
    Reputations:
    -5
    о. именно то что хотел. всем спс
     
  9. skzi

    skzi Elder - Старейшина

    Joined:
    30 Dec 2006
    Messages:
    65
    Likes Received:
    11
    Reputations:
    5
    jquery и ie

    PHP:
    <script src="jquery.js"></script> 
     <script>  
    function sendData(obj) {  
      var post = {p: obj.value, id: obj.id};
      $.post('backend.php', post, function(data){$('#debug').html(data);}) }
      </script> 
    использую библиотеку jquery

    этот код работает на всех браузерах, кроме Ие =(

    подскажите пожалуйста в чем ошибка.

    ie6
     
  10. life_is_shit

    life_is_shit Elder - Старейшина

    Joined:
    21 Aug 2007
    Messages:
    300
    Likes Received:
    149
    Reputations:
    19
    посмотри на наличие багов в хтмл (типа незакрытых форм и т.д.), бывает из-за этого.
     
  11. astrologer

    astrologer Elder - Старейшина

    Joined:
    30 Aug 2007
    Messages:
    837
    Likes Received:
    267
    Reputations:
    59
    Было бы неплохо привести немного больше кода, чтобы было видно, где и как функция запускается на выполнение. А данный код отработал точно как положено, в том смысле, что загрузился jquery.js, определилась функция sendData...
     
  12. skzi

    skzi Elder - Старейшина

    Joined:
    30 Dec 2006
    Messages:
    65
    Likes Received:
    11
    Reputations:
    5
    PHP:
    <script>
    function 
    loock(e,f) {
      for (
    i=0i<f.lengthi++) {
        if (
    f[i].name != e.name && f[i].name.indexOf(e.name) != -1) {
          if (
    e.checked)  f[i].disabled false;
            else 
    f[i].disabled true;
        }
      }
    }
    </script>
    <script src="jquery.js"></script>
    <script>
    function sendData(obj) {
      var post = {p: obj.value, id: obj.id};
    $.post('backend.php', post, function(data){$('#debug').html(data);})
    }
    </script>
    <script>
    function sendDatachbx(val, id) {
      var post = {p: val, id: id};
      $.post('backend.php', post, function(data){$('#debug').html(data);})
    }
    </script> 

    <form method="post" enctype="multipart/form-data">

       1. Вид изделия:
    <select id="izd" onchange="sendData(this)">
        <option value="null">Выберите вид изделия</option>
          <option value="list">Листовка</option>
            <option value="jour" >Журнал/Брошюра/Многостраничный буклет</option>
            <option value="kalen" >Календарь</option>
    </select><br><br>
        2. Вид бумаги:<select id="bumaga" onchange="sendData(this)">
          <option value="melovka">Меловка</option>
          <option value="glanec">Глянец</option>
    </select><br><br>
       2. Ширина: <input type="text" id="shir" onchange="sendData(this)"><br><br>
       3. Высота: <input type="text" id="vis" onchange="sendData(this)"><br><br>
       4. Тираж: <input type="text" id="tir" onchange="sendData(this)"><br><br>
       5. Плотность бумаги: <select id="plot" onchange="sendData(this)">
        <option value="65">65</option>
        <option value="75">75</option>
        <option value="80">80</option>
        <option value="115">115</option>
        <option value="120">120</option>
        <option value="130">130</option>
        <option value="150">150</option>
        <option value="170">170</option>
        <option value="200">200</option>
        <option value="250">250</option>
        <option value="300">300</option>
    </select><br><br>
       6. Красочность: <select id="kras" onchange="sendData(this)">
        <option value="1+0">1+0</option>
        <option value="1+1">1+1</option>
        <option value="2+0">2+0</option>
        <option value="2+1">2+1</option>
        <option value="2+2">2+2</option>
        <option value="3+0">3+0</option>
        <option value="3+1">3+1</option>
        <option value="3+2">3+2</option>
        <option value="3+3">3+3</option>
        <option value="4+0">4+0</option>
        <option value="4+1">4+1</option>
        <option value="4+2">4+2</option>
        <option value="4+3">4+3</option>
        <option value="4+4" selected>4+4</option>
    </select><br><br>
       7. Фальцовка/Биговка<br><br>
       <input type="checkbox" name="one" value="" onclick="loock(this, this.form)">Оформление (Постпечать) <br>
    &nbsp;&nbsp;<input type="Checkbox" name="one1" value="perf" disabled id="idperf" onclick="sendDatachbx(this.checked, this.id)">Перфорация<br>
    &nbsp;&nbsp;<input type="checkbox" name="one2" value="lak" disabled id="idlak" onclick="sendDatachbx(this.checked, this.id)">ВД/офсетный лак<br>
    &nbsp;&nbsp; <select id="izd" onclick="loock(this, this.form)" name="one3" disabled onchange="sendData(this)">
        <option value="glanc">Гланцевая</option>
          <option value="mat">Матовая</option>
    </select>Ламинация <br>
    &nbsp;&nbsp; <select id="izd" onclick="loock(this, this.form)" name="one4" disabled onchange="sendData(this)">
        <option value="splosh">Сплошной</option>
          <option value="vibor">Выборочный</option>
    </select>УФ-лак<br>
    </form>

    <div id="debug">сюда приходит результат =]</div>
    вот весь html код, а вот backend.php
    PHP:
    <?  
    print 
    iconv("WINDOWS-1251""UTF-8""Приняты данные: ");  
    print 
    $_POST['p']; 
    print 
    iconv("WINDOWS-1251""UTF-8""<br>ID принятого элемента: ");  
    print 
    $_POST['id'];
    ?>
    Ребят помогите пожалуйста, скоро проект сдавать, а я даже половины не сделал =\
     
    1 person likes this.
  13. astrologer

    astrologer Elder - Старейшина

    Joined:
    30 Aug 2007
    Messages:
    837
    Likes Received:
    267
    Reputations:
    59
    Код нормально работает в 4 браузерах, в том числе ie6. Повторить ошибку не удалось.
     
    2 people like this.
  14. skzi

    skzi Elder - Старейшина

    Joined:
    30 Dec 2006
    Messages:
    65
    Likes Received:
    11
    Reputations:
    5
    странно.. а ты где проверял?
     
    #394 skzi, 19 Mar 2008
    Last edited: 19 Mar 2008
  15. skzi

    skzi Elder - Старейшина

    Joined:
    30 Dec 2006
    Messages:
    65
    Likes Received:
    11
    Reputations:
    5
    у меня на денвере тоже все нормально
    но на сервере (на работе) не пашет скотина. причем только через ие не пашет
     
  16. astrologer

    astrologer Elder - Старейшина

    Joined:
    30 Aug 2007
    Messages:
    837
    Likes Received:
    267
    Reputations:
    59
    P.S. id должны всегда быть уникальными
     
  17. skzi

    skzi Elder - Старейшина

    Joined:
    30 Dec 2006
    Messages:
    65
    Likes Received:
    11
    Reputations:
    5
    в смысле? У меня же нет повторяющихся ИД
     
  18. skzi

    skzi Elder - Старейшина

    Joined:
    30 Dec 2006
    Messages:
    65
    Likes Received:
    11
    Reputations:
    5
    вообщето нашел пару одинаковых. изменил. результата 0.

    =[

    может на сервере что т не так? Хотя что там может быть не так... jquery посылает обычные пост и гет запросы... так что ничего сложного... ёбаный осел
     
  19. smOleg

    smOleg Banned

    Joined:
    30 Nov 2007
    Messages:
    69
    Likes Received:
    25
    Reputations:
    -5
    Code:
    <script type="text/javascript"> 
    function act(e)
    {
      var aim = e.target,
      blocks = document.getElementById('buttons').getElementsByTagName('LI'),
      l = blocks.length,
      blocks2 = document.getElementById('buttons').getElementsByTagName('A'),
      l2 = blocks2.length;
      while(l--) blocks[l].className = 'normal';
      while(l2--) blocks2[l2].className = 'normal';
      document.getElementById ( aim.parentNode.id ).className = 'active';
       aim.className = 'active';
    }
    </script>
    Code:
      <div id="nav" onclick="act(event)">
    <ul id="buttons">
      <li class="active" id="GENERAL"><a  class="active"  href='#1#' >GENERAL</a></li>
      <li class="normal" id="PREFERENCES"><a  class="normal"  href='#2#' >PREFERENCES</a></li>
      <li class="normal" id="PASSWORD"><a  class="normal"  href='#3#'>PASSWORD</a></li>
      <li class="normal" id="NEWSLETTERS"><a  class="normal"  href='#4#'>NEWSLETTERS</a></li>
      <li class="normal" id="ADMIN"><a  class="normal"  href='#5#'>ADMIN</a></li>
      </ul>
     </div>
    В ИЕ чото неработает. или подскажите как организовать дебаг) чтоб узнать меняет ли оно класы.. тогда нужно смотреть в стилях.

    Ну то что сбрасует все на class="normal" эт точно.. похоже неработает только последние две строчки
     
    #399 smOleg, 20 Mar 2008
    Last edited: 20 Mar 2008
  20. astrologer

    astrologer Elder - Старейшина

    Joined:
    30 Aug 2007
    Messages:
    837
    Likes Received:
    267
    Reputations:
    59
    =)
    Code:
    document.getElementById ( aim.parentNode.id ).className = 'active';
    Зачем так? aim.parentNode - уже готовая ссылка на нужный элемент, поэтому:
    Code:
    aim.parentNode.className = 'active';
    И там не просто так был event.srcElement, не нужно было его выкидывать. В IE свойство event.target не определено
    Code:
    var aim = e.target || e.srcElement,
     
Thread Status:
Not open for further replies.