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]   

> Без описания
Сергей2602
Отправлено: 10 Января, 2013 - 22:26:15
Post Id


Новичок


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


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




Написать программу на языке PHP и встроить её в веб страницу, которая
позволила бы рассчитать скорость движения машины и вывести её в
удобочитаемом виде. Осуществить возможность вывода в км/ч
Исходные данные: Пройденный путь - S; Время движения - t
если можно расспишите все в шагах что и где создать что б все работало в страничке.
заранее спасибо
 
 Top
metaller92
Отправлено: 10 Января, 2013 - 22:27:59
Post Id



Новичок


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


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




Сергей2602 пишет:
Написать программу на языке PHP и встроить её в веб страницу, которая
позволила бы рассчитать скорость движения машины и вывести её в
удобочитаемом виде. Осуществить возможность вывода в км/ч
Исходные данные: Пройденный путь - S; Время движения - t
если можно расспишите все в шагах что и где создать что б все работало в страничке.
заранее спасибо


Зная формулу расчета очень легко написать действия скрипта.

Можешь написать формулу?
 
 Top
Сергей2602
Отправлено: 10 Января, 2013 - 22:32:33
Post Id


Новичок


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


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




metaller92 пишет:
Сергей2602 пишет:
Написать программу на языке PHP и встроить её в веб страницу, которая
позволила бы рассчитать скорость движения машины и вывести её в
удобочитаемом виде. Осуществить возможность вывода в км/ч
Исходные данные: Пройденный путь - S; Время движения - t
если можно расспишите все в шагах что и где создать что б все работало в страничке.
заранее спасибо


Зная формулу расчета очень легко написать действия скрипта.

Можешь написать формулу?

скорость v=s/t
 
 Top
metaller92
Отправлено: 10 Января, 2013 - 22:36:18
Post Id



Новичок


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


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




Сергей2602 пишет:

скорость v=s/t


Ну значит примерно так

PHP:
скопировать код в буфер обмена
  1. $s = $_POST['v'];
  2. $t = $_POST['t'];
  3.  
  4. function somename($s, $t) {
  5. $result = $s/$t;
  6. return $result;
  7. }


И вызываешь ф-цию там где тебе нужно.

PHP:
скопировать код в буфер обмена
  1. $v = somename($s, $t);
  2.  
  3. echo $v;


ну или как там тебе нужно


Отредактировано модератором: Саныч, 10 Января, 2013 - 22:38:19
Код нужно заключать в соответствующие теги.
 
 Top
Саныч Модератор
Отправлено: 10 Января, 2013 - 22:39:25
Post Id



Участник


Покинул форум
Сообщений всего: 1365
Дата рег-ции: Июль 2010  
Откуда: Украина, Запорожье


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




metaller92, ну и на кой здесь функция...

Уже предчувствую следующий вопрос автора: "что с этим делать и куда вставлять" Ха-ха


-----
Все возражают против того, что я гений, хотя никто еще так меня не назвал. - Орсон Уэллс
 
 Top
Сергей2602
Отправлено: 10 Января, 2013 - 22:40:48
Post Id


Новичок


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


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




Саныч пишет:
metaller92, ну и на кой здесь функция...

Уже предчувствую следующий вопрос автора: "что с этим делать и куда вставлять" Ха-ха

совершенно верно))))))))
 
 Top
metaller92
Отправлено: 10 Января, 2013 - 22:41:00
Post Id



Новичок


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


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




Саныч пишет:
metaller92, ну и на кой здесь функция...


Если я делаю действие больше чем один раз - я пишу ф-цию
 
 Top
Сергей2602
Отправлено: 10 Января, 2013 - 22:45:18
Post Id


Новичок


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


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




Рассчитать скорость движения машины и вывести её в удобочитаемом виде. Осуществить возможность вывода в км/ч, м/c.
Исходные данные: Пройденный путь - S; Время движения - t.
Представить решение задачи с помощью одной функции.
Решение задачи:
1) сама функция будет такой:
PHP:
скопировать код в буфер обмена
  1. function speed($s, $t, $val){
  2.         $speed[1] = $s / $t . " км/ч";
  3.         $speed[2] = $speed[1] / 3.6 . " м/с";
  4.         return $speed[$val];
  5. }

Функция имеет 3 аргумента - пройденный путь, время движения и 3-ий аргумент отвечает за пользовательский вариант вывода расчета (км/ч или м/c). В массив $speed попадает 2 варианта расчета, а возвращает ф-ция 1 вариант в зависимости от того, что выбрал пользователь.
2) осуществляем минимальную проверку полученных данных:
PHP:
скопировать код в буфер обмена
  1. if(!empty($_POST['submit'])){
  2.         if($_POST['S'] <= 0 || $_POST['t'] <= 0){
  3.                 $_SESSION['error'] = '<strong><em>Число должно быть больше нуля</em></strong>';
  4.                 header("Location: index.php");
  5.                 exit();
  6.         }else{
  7.                 $_SESSION['res'] = "<strong><em>" .speed($_POST['S'], $_POST['t'], $_POST['val']). "</em></strong>";
  8.                 header("Location: index.php");
  9.                 exit();        
  10.         }
  11. }

Если попало что-то кроме числа с плюсом (1, 2, 50.5 и т.д.) или ноль, то нам это не подходит и в сессионную переменную error мы заносим соответствующее сообщение. Если число нас устраивает, то в $_SESSION['res'] заносим результат работы ф-ции.
3) выводим результат и уничтожаем сессию:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. echo $_SESSION['error'];
  3. echo $_SESSION['res'];
  4. ?>

4) ну и код самой формы:
CODE (html):
скопировать код в буфер обмена
  1. <form method="post" action="">
  2. <table>
  3. <tr>
  4. <td>Пройденный путь (км):</td> <td><input type="text" name="S" /></td>
  5. </tr>
  6. <tr>
  7. <td>Время движения (ч):</td> <td><input type="text" name="t" /></td>
  8. </tr>
  9. <tr>
  10. <td><input type="radio" name="val" value="1" checked="checked" /> км/ч</td> <td><input type="radio" name="val" value="2" /> м/с</td>
  11. </tr>
  12. <tr>
  13. <td colspan="2"><input type="submit" name="submit" value="Рассчитать" /></td>
  14. </tr>
  15. </table>
  16. </form>

Вот полный код скрипта:
CODE (htmlphp):
скопировать код в буфер обмена
  1. <?php
  2.  
  3. function speed($s, $t, $val){
  4.        $speed[1] = $s / $t . " км/ч";
  5.        $speed[2] = $speed[1] / 3.6 . " м/с";
  6.        return $speed[$val];
  7. }
  8.  
  9. if(!empty($_POST['submit'])){
  10.        if($_POST['S'] <= 0 || $_POST['t'] <= 0){
  11.                $_SESSION['error'] = '<strong><em>Число должно быть больше нуля</em></strong>';
  12.                header("Location: index.php");
  13.                exit();
  14.        }else{
  15.                $_SESSION['res'] = "<strong><em>" .speed($_POST['S'], $_POST['t'], $_POST['val']). "</em></strong>";
  16.                header("Location: index.php");
  17.                exit();        
  18.        }
  19. }
  20. ?>
  21.  
  22. <h3><ins>Рассчет скорости</ins></h3>
  23.  
  24. <?php
  25. echo $_SESSION['error'];
  26. echo $_SESSION['res'];
  27. ?>
  28. <form method="post" action="">
  29. <table>
  30. <tr>
  31. <td>Пройденный путь (км):</td> <td><input type="text" name="S" /></td>
  32. </tr>
  33. <tr>
  34. <td>Время движения (ч):</td> <td><input type="text" name="t" /></td>
  35. </tr>
  36. <tr>
  37. <td><input type="radio" name="val" value="1" checked="checked" /> км/ч</td> <td><input type="radio" name="val" value="2" /> м/с</td>
  38. </tr>
  39. <tr>
  40. <td colspan="2"><input type="submit" name="submit" value="Рассчитать" /></td>
  41. </tr>
  42. </table>
  43. </form>

вот нашел похожую но я не знаю как сделать что бона читалась в удобном ввиде в веб страничке
(Добавление)
Саныч пишет:
metaller92, ну и на кой здесь функция...

Уже предчувствую следующий вопрос автора: "что с этим делать и куда вставлять" Ха-ха

дак куда что вставлять?)))))))))


Отредактировано модератором: Саныч, 10 Января, 2013 - 22:48:10
Неужеле кнопки для кода такие незаметные?..
 
 Top
Саныч Модератор
Отправлено: 10 Января, 2013 - 22:46:39
Post Id



Участник


Покинул форум
Сообщений всего: 1365
Дата рег-ции: Июль 2010  
Откуда: Украина, Запорожье


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




metaller92, супер! А если я делаю действие больше двух раз, то пишу целый класс. Подмигивание

Вся задача решается в одну строчку, плюс еще строка на проверку данных (у вас этого кстате нет). Вы же завели 3 лишних переменных да еще и функцию.
metaller92 пишет:
PHP:
скопировать код в буфер обмена
  1. $v = somename($s, $t); 
  2. echo $v;
Вот таких "конструкций" вобще никогда не понимал и не пойму. Заметен стиль попова.

Сергей2602, а на каком уровне знаний вы находитесь? Что такое вобще PHP, как работает и т.д. знаете?


-----
Все возражают против того, что я гений, хотя никто еще так меня не назвал. - Орсон Уэллс
 
 Top
Сергей2602
Отправлено: 10 Января, 2013 - 22:49:08
Post Id


Новичок


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


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




Саныч пишет:
metaller92, супер! А если я делаю действие больше двух раз, то пишу целый класс. Подмигивание

Вся задача решается в одну строчку, плюс еще строка на проверку данных (у вас этого кстате нет). Вы же завели 3 лишних переменных да еще и функцию.
metaller92 пишет:
PHP:
скопировать код в буфер обмена
  1. $v = somename($s, $t); 
  2. echo $v;
Вот таких "конструкций" вобще никогда не понимал и не пойму. Заметен стиль попова.

Сергей2602, а на каком уровне знаний вы находитесь? Что такое вобще PHP, как работает и т.д. знаете?

уровень на 0. всего 2 часа было по компьютерным технологиям а задачи как то решать надо вот и обращаюсь за помощью
 
 Top
Саныч Модератор
Отправлено: 10 Января, 2013 - 23:06:36
Post Id



Участник


Покинул форум
Сообщений всего: 1365
Дата рег-ции: Июль 2010  
Откуда: Украина, Запорожье


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




PHP:
скопировать код в буфер обмена
  1. function speed($way, $time, $mps) {
  2.     return ($way / $time * ($mps ? 3.6 : 1)) . ($mps ? ' м/с' : ' км/час');
  3. }
  4.  
  5. if (!empty($_POST['S']) && !empty($_POST['t']) && !empty($_POST['val'])) {
  6.     if ( ($way = (int) $_POST['S']) <= 0 || ($time = (int) $_POST['t']) <= 0 )
  7.         die('Ошибка!');
  8.     echo speed($way, $time, $_POST['val'] == 2);
  9. }
А зачем это? На калькуляторе посчитать намного быстрей будет)


-----
Все возражают против того, что я гений, хотя никто еще так меня не назвал. - Орсон Уэллс
 
 Top
Сергей2602
Отправлено: 10 Января, 2013 - 23:19:10
Post Id


Новичок


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


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




Саныч пишет:
PHP:
скопировать код в буфер обмена
  1. function speed($way, $time, $mps) {
  2.     return ($way / $time * ($mps ? 3.6 : 1)) . ($mps ? ' м/с' : ' км/час');
  3. }
  4.  
  5. if (!empty($_POST['S']) && !empty($_POST['t']) && !empty($_POST['val'])) {
  6.     if ( ($way = (int) $_POST['S']) <= 0 || ($time = (int) $_POST['t']) <= 0 )
  7.         die('Ошибка!');
  8.     echo speed($way, $time, $_POST['val'] == 2);
  9. }
А зачем это? На калькуляторе посчитать намного быстрей будет)

я не знаю я вообще практически ничего не понимаю))))))просто нашел похожую задачу на другом форуме но как сделать что бы это все работало я не знаю(((((((
 
 Top
Саныч Модератор
Отправлено: 10 Января, 2013 - 23:58:24
Post Id



Участник


Покинул форум
Сообщений всего: 1365
Дата рег-ции: Июль 2010  
Откуда: Украина, Запорожье


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




Ну тогда совет только один - идите на фриланс, подробно излагайте задачу, платите копеечку и знающие люди все сделют за вас.


-----
Все возражают против того, что я гений, хотя никто еще так меня не назвал. - Орсон Уэллс
 
 Top
Саныч Модератор
Отправлено: 11 Января, 2013 - 11:21:47
Post Id



Участник


Покинул форум
Сообщений всего: 1365
Дата рег-ции: Июль 2010  
Откуда: Украина, Запорожье


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





Master_pascal, плюсик вам в копилку. Не нужно набивать количество постов глупыми комментариями.
Ответы не по теме стер.


-----
Все возражают против того, что я гений, хотя никто еще так меня не назвал. - Орсон Уэллс
 
 Top
metaller92
Отправлено: 11 Января, 2013 - 20:58:05
Post Id



Новичок


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


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




Я сам то в PHP новичок, Попова кстати сам не изучаю, учусь по курсу Специалист.
Ну да ладно, знаю PHP в пределах до ООП, с классами знаком но не очень + давно не практиковал PHP, это как обучение в свободное время, а зарабатываю я пока что версткой.

Вот такие дела, как смог так и написал, а вообще понятно что можно и без ф-ции обойтись.



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


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB