|
На часто задаваемые вопросы ищите ответы в теме http://vkontakte.ru/topic-267650_11331820
Если там нет ответа на Ваш вопрос - задавайте его здесь.
122
Александр
"А может ли враг создать свою страничку в другом месте с подобной формой и переменными и отправить данные моему скрипту?"
может, и даже больше скажу, сделает именно так ) но это на самом деле не должно быть страшно, в принципе не так важно откуда пришла инфа есть вариант использовать такую фишку как $_SERVER['HTTP_REFERER'], в нем содержится путь к странице на текущем сайте, на которой был пользователь до перехода на текущую страницу. Эту переменную можно использовать для анализа откуда пришла инфа формы(например проверить соответствие адреса текущей страницы и $_SERVER['HTTP_REFERER']) а hidden-поле можно подделать так же как и все остальные поля, его применяют только для визуального скрытия некоторых служебных данных формы.
123
Антон
Алекс прав. Но я дополню. Есть такая классная штука для FireFox под названием FireBug. Можно редактировать страницу прямо в браузере, подменять поля формы. И при этом ваш скрипт будет думать, что форма пришла именно с вашего сайта (вариант с HTTP_REFERER здесь уже не поможет).
Ставим хороший валидатор форм, и не боимся всякого хлама, который придет к нам на сайт. Валидатор - это проверка приходящих данных на соответствие заданному формату (например корректная дата).
124
Элиза
Здравстуйте! Подскажите, пожалуйста, вот у меня есть в форме список (например, <select><option value=1>Красный</option><option value=2>Синий</option></select>), как при помощи php взять значения красный и синий, чтобы выводило не 1 и 2, а текст.
125
Константин
<form action="color.php" method="get">
<select name="color"> <option value="1">Красный</option> <option value="2">Синий</option></select> </select> <input type="submit" value="ok"> </form> файл color.php <? $color=$_REQUEST["color"]; if($color==1){ echo "Красный"; }elseif($color==2){ echo "Синий"; }else{ echo "Вы не ввели значение"; } ?> вроде так
126
Элиза
да, но если значений несколько десятков, тогда нужно каждый прописывать, а нет ли другого выхода?
127
Константин
конструкция
switch($color){ case 1: echo "Красный"; break; ..... } не катит?? п.с что мешает вместо значений 1-2 написать "красный" синий"?
128
Элиза
Мешает то, что это не удобно, т.к. списки у меня строятся из бд и в другую бд добавляются, а если мне надо изменить "красный на зеленый", надо менять везде и следить за всем , короче будет беспорядок, а так всё по коду. А решение я нашла. Спасибо!
129
Александр
2Элиза Штромберг
поделишься?
130
Константин
хм.. ну сразубы и сказала что из бд данные..
131
Элиза
Попробую поделиться...
Допустим в первой бд у меня два поля: код(1,2,3) и цвет(красный, синий, зеленый). Список строится из этой бд. И я проверяю, если выбранное значение равно коду в бд, то присваиваю переменной этот цвет. if ($_POST["color"]== $r[kod]) { $f = $r[colors]; } а потом добавляю $f в другую бд. Вообще-то тут было всё очень просто, но почему-то я сразу не додумалась...
132
Александр
есть очень полезное "Правило 30 секунд"
"Если хочешь задать вопрос, то подумай еще 30 секунд, возможно ты уже знаешь ответ."
133
Денис
нет.зайда вопрос воображаему чубзику))
и может быть ответ уже есть=)
134
Алексей
Люди, у меня проблема!!! В PHP я ещё тот нуб, поэтому прошу не смеяться)))
Можно-ли с помощью РНР сделать нечто подобное: 1файл: <? *рнр-код* *здоровущий кусок html-кода(меню, логотип и прочее)* *рнр-код* ? > 2файл: <? *рнр-код* *здоровущий кусок html-кода(нижняя часть страниц)* *рнр-код* ?> А потом на основе этих двух файлов создавать все страницы сайта таким образом: <? *рнр-код* *здоровущий кусок html-кода(меню, логотип и прочее)* *рнр-код* ? > КОНТЕНТ <? *рнр-код* *здоровущий кусок html-кода(меню, логотип и прочее)* *рнр-код* ? > Чтоб потом получились такие страницы: здоровущий кусок html-кода(меню, логотип и прочее) КОНТЕНТ здоровущий кусок html-кода(меню, логотип и прочее) А если это можно осуществить, то как? Заранее благодарю.
135
Алексей
<?php
здесь пхп код ?> здесь ХТМЛ <?php include($content); ?> здесь опять хтмл
136
Спайк
Как записать значение в куки?
Как присвоить переменной значение кука?
137
Алексей
запись значения set_cookie()
http://http://docs.php.net/manual/ru/function.setcookie.php Куки возвращенные от клиента хранятся в суперглобальном массиве $_COOKIE PS Опасайтесь взлома сайта через куки
138
Спайк
Да. Читать я умею. Только ни слова не понимаю...
Можно конкретный пример?
139
Константин
Алексей Aka~Android Вишняков
как обезопасить сайт от взлома по куки?..
140
Алексей
no 139. конкретный пример
<?php $value = 'something from somewhere'; setcookie("TestCookie", $value); setcookie("TestCookie", $value, time()+3600); /* expire in 1 hour */ setcookie("TestCookie", $value, time()+3600, "/~rasmus/", ".http://example.com", 1); ?> no140 точно так же, как и от всех остальных. проверяйте полученные от пользователя данные. если вы ждете целое, проверьте что это целое. если ждете адрес почты, проверьте, что это почта и так далее. экранируйте при вводе в ДБ. используйте htmlspecialchars при выводе на экран!)
141
Константин
окс - понятно!
142
Сергей
no140
Можно шифровать данные например md5($data)
143
Олег
Привет всем ... Кто сможет помочь начинающиму веб мастеру по поводу скриптов PHP и языка HTML.. отпиите в личку ! просто не получаеться на сайт выложить скрипт с обратной связью! Отпишите кому не в лом помочь!
Заранее спасиб!
144
Александр
что конкретно не получается?
145
Олег
ну короче я скачал урок по созданию обратной связи на сайте
Сделал все как чувак делал : но у меня не запускается на собственном компе " ща пришлю текстик , вот текст send.php : <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://http://www.w3.org/TR/xhtml1/DTD/xht...ransitional.dtd"> <html xmlns="http://http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" /> <title>Untitled Document</title> </head> <form action="file:///D|/site/send.php" method="post" name="f1"> <input type="text" name="name" /><br /> <input type="text" name="email" /><br /> <textarea name="message"></textarea> <input type="submit" value="Отправить сообщение" /><br /> <body> </body> </html> <?php if (isset(&_POST['&name'])) {&name = &_POST ['&name'];} if (isset(&_POST['&email'])) {&email = &_POST ['&email'];} if (isset(&_POST['&message'])) {&message = &_POST ['&message'];} &address = 'ou_grishanov@http://mail.ru'; &sub = "Сообщение из 15-го выпуска рассылки"; &mes = "Автор назвался: &name \n Указал свой адрес: &email \n Содержание письма: &message'; &verify = mail (&address,&sub,&mes,"content-type:text/plain; charset = windows-1251\r\nFrom:&email"); If (&verify == ' true') { echo "<p>Сообщение отправлено"; } else { echo "<p>Сообщение не отправлено"; } ?> ща пришлю формы index.php : <html xmlns="http://http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" /> <title>Форма</title> </head> <form action="send.php" method="post" name="f1" <P>Введите имя:<br> <input type="text" name="name"></p> <P>Введите Email:<br> <input type="texy" name="email"></p> <P>Введите Сообщение:<br> <textarea name="message" rows="5" cols="30"></textarea><br> <input type="submit" value="Отправить сообщение"</P><br> <body> </body> </html> если сможите объясните а то хочеться на учитсья ,
146
Олег
Хотя впринципе операторы понятно , но вот почему не отправляетсья я хз .
147
Александр
а функция mail ваще доступна?? ут тебя настроен почтовый сервер на компе??
148
Константин
а файлы лежат на локалхосте?
149
Олег
Для начала поставил себе Денвер , и положил файлы куда нуждно ща напищу путь : K:\home\http://test1.ru\www -- виртуальный диск . . .
Если не чего не понятно есть какие то нормальные скрипты с которыми вы работали для обратной связи?!
150
Константин
все работает .. выкладывай скрипты на интернет сервак
|


Антон