Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> вывод текста в разные строки по нажатии на button 
:(
    Опции темы
optik
Дата 6.4.2008, 19:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 31
Регистрация: 13.11.2006

Репутация: нет
Всего: нет



Код

<?php

echo "<form method=\"post\" action=\"\">";
echo "<input type=\"submit\" name=\"but1\" value=\"кнопка 1\">";
echo "<input type=\"submit\" name=\"but2\" value=\"кнопка 2\">";
echo "</form>";

if (isset($_POST['but1'])) 
{
    print "нажата кнопка 1<br>";

elseif(isset($_POST['but2'])) 
{
    echo "нажата кнопка 2";
}
?>


при выполнении этого кода при нажатии на баттом1 и баттом2 - идёт подмен фраз "нажата кнопка 1" и "нажата кнопка 2".

а что надо добавить чтобы при нажатии кнопок эти фразы писались вниз одна за одной, а не перетирали друг друга? 

например при последовательном нажатии butom1,butom1,butom2,butom1,butom2 выводилось:

[кнопка 1][кнопка 2]
нажата кнопка 1
нажата кнопка 1
нажата кнопка 2
нажата кнопка 1
нажата кнопка 2

(при этом сами кнопки также должны быть отображены сверху)


PM MAIL   Вверх
Canarat
Дата 6.4.2008, 19:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 212
Регистрация: 11.3.2008
Где: Каспий

Репутация: 5
Всего: 5



Без предварительной регистрации предыдущего нажатия не обойтись. В скрипт возможна передача только одной нажатой кнопки submit, воспользуйся небольшим количеством JS, например генерацией скрытых полей, или вообще все перевести на JS, если задача позволяет.
PM MAIL   Вверх
optik
Дата 6.4.2008, 19:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 31
Регистрация: 13.11.2006

Репутация: нет
Всего: нет



Цитата(Canarat @ 6.4.2008,  19:30)
 воспользуйся небольшим количеством JS, например генерацией скрытых полей

у тебя есть пример этого?:
PM MAIL   Вверх
Canarat
Дата 6.4.2008, 19:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 212
Регистрация: 11.3.2008
Где: Каспий

Репутация: 5
Всего: 5



JS это я погорячился, через сессии все куда проще:
Код

<?php
session_start();
if(!isset($_SESSION['butts'])) $_SESSION['butts']=array();
echo "<form method=\"post\" action=\"\">";
echo "<input type=\"submit\" name=\"but1\" value=\"кнопка 1\">";
echo "<input type=\"submit\" name=\"but2\" value=\"кнопка 2\">";
echo "</form>";
if(isset($_POST['but1'])) $_SESSION['butts'][]=1;
elseif(isset($_POST['but2'])) $_SESSION['butts'][]=2;
foreach($_SESSION['butts'] as $v){
echo "нажата кнопка $v<br>";
}
?>

PM MAIL   Вверх
skyboy
Дата 6.4.2008, 21:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



а зачем делать запрос к серверу, когда намного быстрее было бы делать это на стороне клиента средствами того же javascript?

Добавлено через 15 секунд
 smile 
PM MAIL   Вверх
Canarat
Дата 6.4.2008, 21:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 212
Регистрация: 11.3.2008
Где: Каспий

Репутация: 5
Всего: 5



skyboy, дык собственно и я о том же.

Может правда топикстартер упростил задачу до примитива, потому что в такой постановке я смысла в кнопочках, пишуших строки на стороне клиента, не вижу smile
PM MAIL   Вверх
SelenIT
Дата 6.4.2008, 22:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 32
Всего: 401



В заданной формулировке PHP ни при чем. Элементарный JS. Полный код, реализующий задачу:
Код

<input type="button" name="but1" value="кнопка 1" onclick="document.body.innerHTML+='нажата кнопка 1<br>'">
<input type="button" name="but2" value="кнопка 2" onclick="document.body.innerHTML+='нажата кнопка 2<br>'">
<br>



--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
optik
Дата 7.4.2008, 16:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 31
Регистрация: 13.11.2006

Репутация: нет
Всего: нет



хех, да, задачку я упростил, но видимо слишком уж упростил ;)
На самом деле по нажатию кнопок должны отображаться различные блоки, содержащие элементы html, переменные, в том числе двумерные массивы, ну например такой:
Код

echo "
<table>
for($i=0;$i<4;$i++)
{
      <tr><td>НОМЕР $i</td></tr>
      <tr><td>$arr[$i][$j]</td></tr>
}
</table>";


значения в массиве arr постоянно меняются и мне надо выводить их все в столбец, один под другим
в том случае как делал я (1й пост) у меня массив каждый раз перетирался и выводился поверх предыдущего  сверху страницы..
при такой постановке задачи мне подойдёт только решение Canarat'а (19.36) (через SESSION) или можно JS подключить? (ограничений на способ реализации задачи нет)

можете для этого примера (с массивом) маленький примерчик привести? (чтоб выводилось примерно так:

[button1][button2]

1  2  3  4
a  b  c  d 
f  d  e  w

1  2  3  4
e  r  w h 
j  q  a  q

1  2  3  4
q a  l   i
k u  t  n

и так далее, при этом нажимается кнопка 1, кнопку 2 вообще можно не рассматривать, для неё я сам сделаю, если разберусь как с 1й кнопкой сделать)

 


PM MAIL   Вверх
Feldmarschall
Дата 7.4.2008, 16:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 22
Всего: 32



опять слишком упростил.
не нужны для твоей задачи никакие сессии и прочее.
всю логику отображения передаешь в адресной строке.

Но если сам не можешь сообразить, как сделать, и хочешь, чтобы за тебя написали, то будь добр описывать реальную задачу.

PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0993 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.