За последние 24 часа нас посетили 18287 программистов и 1597 роботов. Сейчас ищут 897 программистов ...

Нажатие на картинку.

Тема в разделе "PHP для новичков", создана пользователем Serjuk, 16 дек 2011.

  1. Serjuk

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

    С нами с:
    31 окт 2011
    Сообщения:
    44
    Симпатии:
    0
    Здравствуйте, столкнулся с проблемкой.
    Предположим есть картинка. Картинка выполняет роль формы. То есть если в обычную форму мы вписываем значение и оно его передает переменной, возьмем к примеру переменную check, например, написали в форму значение 100 и по нажатию на кнопку "передать", 100 окажется в check. То же самое мне надо проделать с картинкой. То есть жмешь на картинку и в переменной check передается значение 100. Но значение должно передавать в базу, только после нажатия на кнопку "передать",а не по нажатию на картинку.
    Приведу пример работы:
    Код (Text):
    1.  
    2.  <input type="checkbox" name="check1" /> Пример<br />
    3.   <input type="submit" value="Передать" />
    Мне нужно обыграть такой же вид, только без checkbox, а через картинки. В этом случае, ставишь галочку у "Пример" и после нажатия на кнопку передается значение. Так же надо и с картинками, чтобы вначале нажал на картинку и только после того как нажал на кнопку передать, значение передавалось, а не сразу после того как нажал на картинку.[/code]
     
  2. sobachnik

    sobachnik Старожил

    С нами с:
    20 апр 2007
    Сообщения:
    3.380
    Симпатии:
    13
    Адрес:
    Дмитров, МО
    Вот, порассматривай, как это работает, повыковыривай нужное:
    PHP:
    1. <?php
    2. header('Content-type: text/html; charset=Windows-1251');
    3. ?>
    4. <html>
    5.     <head>
    6.         <meta http-equiv="Content-type" content="text/html; charset=Windows-1251" />
    7.         <title>Тест</title>
    8.         <script type="text/javascript">
    9.             function addVar(name, val) {
    10.                 var form = document.some_form;
    11.                 if(form[name])
    12.                     form[name].value = val;
    13.                 else {
    14.                     var input = document.createElement('input');
    15.                     input.type = 'hidden';
    16.                     input.name = name;
    17.                     input.value = val;
    18.                     form.appendChild(input);
    19.                 }
    20.             }
    21.         </script>
    22.     </head>
    23.     <body>
    24. <?php
    25. if(count($_GET) > 0) {
    26.     echo('<pre>');
    27.     print_r($_GET);
    28.     echo('</pre>');
    29. }
    30. ?>
    31.         <img src="image1.gif" border="0" onclick="javascript:addVar('check1',100)" /><br />
    32.         <img src="image1.gif" border="0" onclick="javascript:addVar('check2',200)" /><br />
    33.         <img src="image1.gif" border="0" onclick="javascript:addVar('check3',300)" />
    34.         <form name="some_form" method="get" action="<?php echo($_SERVER['PHP_SELF']); ?>">
    35.             <input type="submit" value="Передать" />
    36.         </form>
    37.     </body>
    38. </html>
     
  3. Serjuk

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

    С нами с:
    31 окт 2011
    Сообщения:
    44
    Симпатии:
    0
    Попробовал, что то ноль реакции
    Вот если у меня в таком виде
    Код (Text):
    1.  
    2. <input type="checkbox" name="check1" /> Пример<br />
    3. <input type="checkbox" name="check1" /> Пример2<br />
    4.   <input type="submit" value="Передать" />
    То если переделывать под картинки, будет в таком виде :
    Код (Text):
    1.  
    2. //код javascript
    3. <img src="image2.gif" border="0" onclick="javascript:addVar('check1',Пример)" />
    4.          <img src="image.gif" border="0" onclick="javascript:addVar('check2',Пример2)" />
    5.   <form name="some_form" action="files/create.php" method="POST" class="create">
    6. <input type="submit" value="Передать" />
    В таком виде - ноль реакции, просто картинки и все...
     
  4. sobachnik

    sobachnik Старожил

    С нами с:
    20 апр 2007
    Сообщения:
    3.380
    Симпатии:
    13
    Адрес:
    Дмитров, МО
    А ты попробуй просто вот тот код, который я привёл - прямо полностью скопировать и в пустой текстовый файл вставить и с расширением .php сохранить. У меня на локальной машине этот код работает так, как ты описал. JavaScript должен быть включён.
    Только само по себе нажатие на картинку - никаких видимых глазу изменений не вносит. Изменения-то видны после нажатия кнопки "Передать".

    Попробуй просто нажать на "Передать".
    Потом нажать на какую-нибудь картинку и на "Передать".
    Потом нажать на все картинки и потом на "Передать".
     
  5. Serjuk

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

    С нами с:
    31 окт 2011
    Сообщения:
    44
    Симпатии:
    0
    не работает почему то...
     
  6. stos

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

    С нами с:
    28 дек 2007
    Сообщения:
    57
    Симпатии:
    0
    у меня работает :)

    ммм... а какую ошибку выдаёт? в чем проявляется "не работает" ?!