[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: помогите доделать не пойму в чем ошибка
Гость_Саша
<html>
<body>
<?


if ($_POST['okbutton'] == 'Сложение векторов')
{
$a=$_POST['a'] ;
$b=$_POST['b'];
if (!( preg_match("/\+\-\.[0-9]/",$a)) || !(preg_match("/\+\-\.[0-9]/",$b)))
echo "Результат сложения первых двух векторов = <b>" . ($a+$b) . "</b>" ;
else echo"неправильно введены данные";


echo "<br>";

$c=$_POST['c'];
$d=$_POST['d'];
if (!( preg_match("/\+\-\.[0-9]/",$c)) || !(preg_match("/\+\-\.[0-9]/",$d)))
echo "Результат сложения вторых двух векторов = <b>" . ($c+$d) . "</b>" ;
else echo'неправильно введены данные';

echo "<br>";
}/*
else
if ($_POST['okbutton'] == 'Вычитание векторов')
{
$a=$_POST['a'];
$b=$_POST['b'];
$c=$_POST['c'];
$d=$_POST['d'];
echo 'Результат вычитания первых двух векторов = <b>' . ($a-$ . '</b>';
echo "<br>";
echo 'Результат вычитания вторых двух векторов = <b>' . ($c-$d) . '</b>';
}
else
if ($_POST['okbutton'] == 'Умножение векторов')

{
$a=$_POST['a'];
$b=$_POST['b'];
$c=$_POST['c'];
$d=$_POST['d'];
echo 'Результат умножения первых двух векторов= <b>' . ($a*$ . '</b>';
echo "<br>";
echo 'Результат умножения вторых двух векторов = <b>' . ($c*$d) . '</b>';
}
else
echo 'Введите значния векторов!';
*/

?>

<form
method="POST" action="<?php $_SERVER['PHP_SELF']; ?>" >
Вектор X1: <input type="text" name="a" value="<? echo $a; ?>">
Вектор Y1: <input type="text" name="b" value="<? echo $b; ?>">
Вектор X2: <input type="text" name="c" value="<? echo $c; ?>">
Вектор Y2: <input type="text" name="d" value="<? echo $d; ?>">
<br>
<input
type="submit" name="okbutton" value="Сложение векторов">
<input
type="submit" name="okbutton" value="Вычитание векторов">
<input
type="submit" name="okbutton" value="Умножение векторов">
</form>

</body>
</html>




Спустя 2 минуты, 23 секунды (8.02.2012 - 00:09) Guest написал(а):
это сложение вычитани и умножение по 2 вектора,мне препод сказал сделай проверку на вводимые данные,чтобы только цифры,а если букву ввести то будет ошибка

else echo"неправильно введены данные";

но почему то не работает

Спустя 4 минуты, 2 секунды (8.02.2012 - 00:13) inpost написал(а):
Найди место, у тебя скобка открывается, но не закрывается.
К тому же регулярка странная какая-то. У тебя входящие данные в таком виде:
+-.7 - странная строка smile.gif

Спустя 16 минут, 40 секунд (8.02.2012 - 00:30) Guest написал(а):
а не могли бы помочь я в это не шарю и прпод не объясняет говорит читайте в нете

Спустя 2 минуты, 41 секунда (8.02.2012 - 00:33) inpost написал(а):
Вот прям всё так? Злые преподы, а мы такие хорошие, а даже почитать ничего не можем?
Либо сам пробуешь делать, а мы лишь на ошибки указываем, либо за деньги. Хотя за деньги на месте студента я предпочёл бы дать самому преподу, чтобы меньше хлопот было бы smile.gif

Спустя 1 минута, 42 секунды (8.02.2012 - 00:34) Guest написал(а):
заплатил бы если брал бы он,а про препода я правду сказал мои слова подвердят весь курс((

Спустя 2 минуты, 32 секунды (8.02.2012 - 00:37) inpost написал(а):
но не весь курс бегает по форумам и клянчит халявку.
Если вам преподают курс программирования, значит специальность у вас такая. А если тебе лень, то плати, не хочет брать препод, я думаю, у нас тут много кто согласится поработать smile.gif

Спустя 1 минута, 15 секунд (8.02.2012 - 00:38) Guest написал(а):
сколько это будет стоить?

Спустя 3 минуты, 3 секунды (8.02.2012 - 00:41) inpost написал(а):
Рублей 400 у меня. У других дешевле. Поэтому рекомендую посмотреть в сторону других. Расчёт по веб-мани.

Спустя 1 минута, 48 секунд (8.02.2012 - 00:43) Guest написал(а):
за этот простой скрипт 400
вот этот лохотрон,я хоть не понимаю в php но это чересчур

Спустя 3 минуты, 11 секунд (8.02.2012 - 00:46) inpost написал(а):
Guest
Представим профессионала-программиста: 2000 $ в месяц.
2000$ \ 4 недели = 500$ в неделю, \5 = 100$ в день, а это от 4 до 6 часов. Возьмем по среднему: 5 часов. 100$/5 = 20$ в час.
20$ * курс 30 = 600 рублей в час.
Посмотреть скрипт, подправить и сделать его, а потом проверить баланс счёта на веб-мани, чтобы без обманов, скинуть скрипт тебе обратно - пол часа, примерно 300-400 рублей.

Математика младших классов.

Спустя 1 минута, 53 секунды (8.02.2012 - 00:48) Guest написал(а):
но есть нормальные люди которые могут помочь итак ,видно зашел не на тот форум

Спустя 4 минуты, 53 секунды (8.02.2012 - 00:53) inpost написал(а):
Я с тобой полностью согласен.
Ты читал название форума? PHP программисты, это говорит о том, что тут общаются программисты и друг другу помогают.
А не зомби одинокие импотенты, у которых нет личной жизни и живут помогая день ото дня по 100 студентам.

Спустя 2 минуты (8.02.2012 - 00:55) inpost написал(а):
А в целом мы помогаем друг другу (программист программисту) или обучаем новых программистов. Очень редко когда занимаемся заказами клиентов, так как для этого существуют биржи-фриланса.
Жаль, что нет посреди экрана огромной надписи "тут халявы нет" smile.gif Хотя форум из себя это представляет. Мы помогли бы со скриптом, если бы ты сам был бы программистом и хоть капельку понимал в том, что ты делаешь. А мы даём лишь подсказки, а не за тебя пишем код.

Спустя 3 минуты, 32 секунды (8.02.2012 - 00:59) Guest написал(а):
согласен,подскажи какие тут ошибки

Спустя 10 минут, 40 секунд (8.02.2012 - 01:09) inpost написал(а):
Я выше написал.
Необходимо в регулярке указать начало и конец строки, в перечислении указать допустимые символы. Так же указать количество символов.

Спустя 11 часов, 44 минуты, 55 секунд (8.02.2012 - 12:54) Guest написал(а):
подскажите ошибки

Спустя 1 минута, 2 секунды (8.02.2012 - 12:55) Guest написал(а):
там же есть допустимы е символы + - точка и цифры

Спустя 1 минута, 7 секунд (8.02.2012 - 12:56) inpost написал(а):
ну я же выше написал. При чём дважды. Открывай учебник и читай про регулярки.

Спустя 9 минут, 25 секунд (8.02.2012 - 13:06) m4a1fox написал(а):
inpost
Воспитанием занимаешься.... эх студенты... они такие... студенты smile.gif
Только убейте не пойму... с каких пор для проверки на число используют регулярку? Куда делать старое и доброе (int), (interget), (is_numeric)?

Спустя 7 минут, 34 секунды (8.02.2012 - 13:13) inpost написал(а):
m4a1fox
Потому что там ещё точка и знаки + -. smile.gif

Спустя 5 минут, 49 секунд (8.02.2012 - 13:19) m4a1fox написал(а):
Ааааааааааааа. Тьфу, я то сразу и не понял... :). Но вот если бы только не +, -, то int подошел бы...

Тогда уж мне поясните.... почему вот это работает

$a = -3.14;
if((float) $a){
echo $a .' - int';

}else{
echo $a.' - str';
}

Выводит int.

И так, тоже верно, что ли получается?

$a = -3.14;
if((int) $a){
echo $a .' - int';

}else{
echo $a.' - str';
}

Так же выводит int

Спустя 12 минут, 14 секунд (8.02.2012 - 13:31) inpost написал(а):
int - не проверка, а приведение к типу.
(int)$a - что вернуло? Правильно, TRUE, то есть приведение к типу ПРОШЛО УСПЕШНО, поэтому проверка никогда не вернёт false.

Спустя 5 минут, 17 секунд (8.02.2012 - 13:37) Guest написал(а):
^ $

эти символы указываю начало и конец строки верно?


if (!( preg_match("/^\+\-\.[0-9]/",$a)) || !(preg_match("/^\+\-\.[0-9]/",$b)))
echo "Результат сложения первых двух векторов = <b>" . ($a+$b) . "</b>" ;
else echo"неправильно введены данные";

Спустя 12 минут, 54 секунды (8.02.2012 - 13:49) inpost написал(а):
Надо начинать с меньшего, а не сразу искать ответ на нужный вопрос.

Спустя 53 секунды (8.02.2012 - 13:50) m4a1fox написал(а):
inpost
Цитата
int - не проверка, а приведение к типу.

Согласен, но если поставить строку - то будет false. Почему так нельзя сделать не понимаю. Обычный условный оператор, если int - т.е. приведение к типу прошло успешно - выполняем дальше, иначе (false) вывод сообщения о том, что это строка... Еще есть и float - правда, уже сомневаюсь что это, или проверка, или такое же приведение к типу. Полезу ка я на php.net, что бы запомнить.

Спустя 1 минута, 24 секунды (8.02.2012 - 13:52) inpost написал(а):
5lalalala
int вернёт 5 smile.gif
"5лалала" = строка smile.gif

Спустя 8 минут, 40 секунд (8.02.2012 - 14:00) m4a1fox написал(а):
inpost
Согласен. ТЫ был как всегда прав. Проверил. Запомнил.

Спустя 11 минут, 51 секунда (8.02.2012 - 14:12) m4a1fox написал(а):
ТС, а ну ответь ка мне... вот такая строка (+2435ывапывпа), по твоему скрипту, что с ней должно произойти?

Спустя 2 минуты, 38 секунд (8.02.2012 - 14:15) Guest написал(а):
if (!( preg_match("/^\+\-\.[0-9]/",$c)) || !(preg_match("/^\+\-\.[0-9]/",$d)))
echo "Результат сложения вторых двух векторов = <b>" . ($c+$d) . "</b>" ;
else echo'неправильно введены данные';

что на это скажешь?

Спустя 2 минуты, 32 секунды (8.02.2012 - 14:17) m4a1fox написал(а):
Guest
Цитата
что на это скажешь?

Работает?

Спустя 4 минуты, 8 секунд (8.02.2012 - 14:22) inpost написал(а):
Ничего ты не читал.

Спустя 32 минуты, 41 секунда (8.02.2012 - 14:54) Guest написал(а):
ну теперь хоть ошибка выскакивает ,только как то боком

Спустя 1 час, 1 минута, 32 секунды (8.02.2012 - 15:56) walerus написал(а):
Guest - Уже бы зарегистрировался бы на форуме, т.к. учеба только началась у тебя, а то как то с призраком разговаривать дальше 3х страниц, как то не сильно нравится.

По теме, почитай про Метасимволы регулярных выражений, ну и вообще про все что касается регулярок, там не много, одна страничка всего.

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

Ошибка вот тут - preg_match("/\+\-\.[0-9]/",$a), нужно дописать пару символов и убрать пару и все будет работать...

Спустя 8 минут, 51 секунда (8.02.2012 - 16:05) inpost написал(а):
walerus
Ну регистрироваться... человеку халявку надо на зачет и он нас покинет. Пустой аккаунт будет smile.gif
Выше я всё сказал, а человек даже палец об палец не ударил, чтобы что-то почитать и поучить.
Я то понимаю, что темку закрыть я не могу, но в любом случае желание такое было. Мы день ото дня посылаем халявщиков, а они всё лезут-лезут-лезут.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.