Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: PHP

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: php-для начинающих
mistio
Отправлено: 04 Января, 2010 - 22:10:12
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Янв. 2010  


Помог: 0 раз(а)




Всем добрый день,ночь,вечер !
Я только недавно начал учить php (5Й день) вот сегодня налобал маленькую програмку
http://foton-studio[dot]ru/urok1/form.php

вот ее код:

<?php

$a = $_POST['a'];
$b = $_POST['b'];


if ($a > $b and $b < $a) //проверяем в двойных условиях что больше А или B
{
$c = $a - $b; //если А больше B,то из A вычетаем B и кладем значение в переменную
print "<h2>A: $a - B: $b = $c</h2>"; //выводим значение из переменной
}
else
{
$d = $b - $a; // если иначе B больше A,то из B вычетаем A и кладем значение в переменную
print "<h2>B: $b - A: $a = $d</h2>"; //выводим значение из переменной
}

?>

И у меня возникли вопросы
1.хочу на страницу с формой поставить пару тройку галок ,тоесть в зависемости от нажатой галки программа будет выполнять те или иные десйтвия ,к примеру умножать числа,делить,итд......
пробавал разные условия писать чегото не выходит.....?

2.Как защищаться от повторной отправки данных?

3.Как сделать чтоб со страницы с результатами автоматом через к примеру 5сек перекидовало обратно на страницу с формой?

зарание спасибо!
 
 Top
Мелкий Супермодератор
Отправлено: 04 Января, 2010 - 22:44:48
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




PHP:
скопировать код в буфер обмена
  1. if ($a > $b and $b < $a) //проверяем в двойных условиях что больше А или B

А зачем двойное условие, проверяющее одно и то же? a > b следовательно b < a, это, собственно, аксиома.

1) ставите <input type="checkbox" name=name> в документ, если if (isset($_POST['name'])) выполняется, значит галка была установлена, иначе - не установлена
2) поясните, что имеете в виду
3) <meta http-equiv="refresh" content="5; url=(куда перенаправлять)"> в область head документа


-----
PostgreSQL DBA
 
 Top
JustUserR
Отправлено: 05 Января, 2010 - 00:38:11
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




mistio пишет:
Как защищаться от повторной отправки данных?
На самом деле это не такой уж и простой вопрос и существует много подходов к этой проблеме
Конечно если на вашем сайте есть регистрация то делается легко - для данного пользователя запоминается последняя отправленная информация и ее повторная отправка не разрешается
В противном случае основная сложность заключается в том чтобы идентифицировать пользователя - например для каждой формы можно генерировать большое случайное число и запоминать его - и если пользователь заново отправит форму не обновив страницу с формой то на сервере уже будет проверено что для данного случайного числа уже отправлено сообщение и повтор будет заблокирован


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Монстр_11111
Отправлено: 05 Января, 2010 - 00:46:15
Post Id



Частый гость


Покинул форум
Сообщений всего: 248
Дата рег-ции: Нояб. 2009  


Помог: 0 раз(а)




mistio пишет:
2.Как защищаться от повторной отправки данных?


Ты имеешь ввиду при обновлении страницы ?
 
 Top
mistio
Отправлено: 05 Января, 2010 - 01:01:38
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Янв. 2010  


Помог: 0 раз(а)




Монстр_11111 пишет:
Ты имеешь ввиду при обновлении страницы ?

да!

========================
все переделал прогу свою =) http://foton-studio[dot]ru/urok1/form.php

<?php

$a = $_POST['a'];
$b = $_POST['b'];

if (isset($_POST['bol']))
if ($a > $b)
{
$c = $a - $b;
print "<h2>A:$a - B:$b = $c</h2>";
}
else
{
$d = $b - $a;
print "<h2>B:$b - A:$a = $d</h2>";
}


if (isset($_POST['bol1']))
if ($a == $b)
{
print "<h2>A:$a = B:$b</h2>";
}
else
{
print "<h2>Числа не равны! A:$a B:$b</h2>";
}

?>

(Отредактировано автором: 05 Января, 2010 - 01:21:53)

 
 Top
Монстр_11111
Отправлено: 05 Января, 2010 - 01:44:32
Post Id



Частый гость


Покинул форум
Сообщений всего: 248
Дата рег-ции: Нояб. 2009  


Помог: 0 раз(а)




Знаешь что , почитай как еще учебники . И пользуйся денвером .
И почитай про функцию isset , и подумай как сделать твой скрипт в одном файле )
 
 Top
JustUserR
Отправлено: 05 Января, 2010 - 12:02:39
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




mistio Прочитайте то что я написал выше - как раз про обновление страницы


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Nikotan2008
Отправлено: 13 Января, 2010 - 09:51:58
Post Id


Новичок


Покинул форум
Сообщений всего: 17
Дата рег-ции: Янв. 2010  


Помог: 0 раз(а)




Монстр_11111
я попробовал скопировал твой текст сохранил index.php
запустил test1.ru
denver запущен
ничего нет
надо обязательно на сервер грузить?

и подскажи что это такое $a = $_POST['a'];
 
 Top
RomAndry Администратор
Отправлено: 13 Января, 2010 - 10:01:39
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 913
Дата рег-ции: Янв. 2008  


Помог: 6 раз(а)




Nikotan2008
возможно не запущен.
проверять лучше положив файлик в главный каталог с таким содержанием
 
My status
 Top
Nikotan2008
Отправлено: 13 Января, 2010 - 10:12:08
Post Id


Новичок


Покинул форум
Сообщений всего: 17
Дата рег-ции: Янв. 2010  


Помог: 0 раз(а)




<? echo "Привет"; ?>

работает


почему именно index.php

в http://test1[dot]ru/ там что где-то прописано читать файл "index.php" что-ли
просто пробую некоторые уроки (хоть толком не получаеться)
но просто приходиться переписывать этот фаил разве нельзя
при запуске http://test1[dot]ru/ указывать index.php или index2.php
 
 Top
EuGen Администратор
Отправлено: 13 Января, 2010 - 10:23:20
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




От повторной отправки - перенаправлением


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Nikotan2008
Отправлено: 13 Января, 2010 - 10:30:20
Post Id


Новичок


Покинул форум
Сообщений всего: 17
Дата рег-ции: Янв. 2010  


Помог: 0 раз(а)




EuGen издеваешься? я 2 дня назад "hello world" вывел на экран.
ладно можно другой вопрос:

вот пример урока:
2.<?PHP
3.//мы предположим, что в ходе выполнения программы мы откуда-то взяли переменную $sName
4.if($sName=="EuGen")
5.{
6. echo("Да, это я");
7.}
8.else
9.{
10. echo("Наверное, это Valenok");
11.}
12.?>

ладно день ушёл чтоб найти "$sName"

но вопрос как в поле ввести имя и при нажатии на кнопку должен работать код:
if($sName=="EuGen")

что-то типа того если пусто то обратно
<html><body>
First Name <input type=text name="sName" size=20><br>
<?PHP
if($sName=="")

if($sName=="EuGen")
...

смысл понимаю но операторов и тегов не знаю
а описаний с примерами(нормальными примерами) не могу найти
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB