|
|
|
| Пользователю доступно размещение ссылок в ротатор, как запретить добовлять вторую ссылку
if ($_POST['url'] && $_POST['desk'] && $_POST['uid'] && $_POST['expired_date'])
{
$q = @mysql_query( "SELECT * FROM `rotator` WHERE uid='$un'" );
if( mysql_num_rows($q)>0 )
{
if ( $un !== $q['uid'] )
{
echo "<font color=red>У вас уже есть одна ссылка! </font><br><br>";
}
}
@mysql_query("INSERT INTO `rotator` (`id`, `create_date`, `expired_date`, `url`, `desk`, `uid`, `clicks`) VALUES (NULL , '".date("Y-m-j H:i:s")."', '".$_POST['expired_date']."', '".$_POST['url']."', '".$_POST['desk']."', '".$_POST['uid']."', '' ); ");
}
|
Немного начал, а в конце запутался!! Прошу помочь.... заранее благодарю | |
|
|
|
|
|
|
|
для: clubxaliav
(31.10.2009 в 22:48)
| | if ($_POST['url'] && $_POST['desk'] && $_POST['uid'] && $_POST['expired_date'])
Можно смысл этого условия узнать?
Кстати вот это:
@mysql_query("INSERT INTO `rotator` (`id`, `create_date`, `expired_date`, `url`, `desk`, `uid`, `clicks`) VALUES (NULL , '".date("Y-m-j H:i:s")."', '".$_POST['expired_date']."', '".$_POST['url']."', '".$_POST['desk']."', '".$_POST['uid']."', '' ); ");
| Вообще не кул: зачем в поле id вставлять NULL, и напрямую пихать переменные в SQL запрос, пришедшие с другой страницы не есть хорошо | |
|
|
|
|
|
|
|
для: tvv123456
(31.10.2009 в 23:09)
| | >if ($_POST['url'] && $_POST['desk'] && $_POST['uid'] && $_POST['expired_date'])
>Можно смысл этого условия узнать?
>
Есть форма добавления ссылки <input name=url ..... и так далее, после нажатия sumbit метод POST['url'] добавляет в бд данные введенные в эту форму | |
|
|
|
|
|
|
|
для: clubxaliav
(31.10.2009 в 22:48)
| |
INSERT INTO `rotator`....... '".$_POST['expired_date']."', '".$_POST['url']."', '".$_POST['desk']."'
|
Вам такое юзер вставит ,что мало не покажется...фильтровать надо однако | |
|
|
|
|
|
|
|
для: serjinio
(31.10.2009 в 23:29)
| | А может у него режим магических кавычек включен? | |
|
|
|
|
|
|
|
для: Рома
(31.10.2009 в 23:53)
| | >А может у него режим магических кавычек включен?
АГА и я Властелин колец!! | |
|
|
|
|
|
|
|
для: clubxaliav
(01.11.2009 в 14:01)
| | Властелин кавычек! :) | |
|
|
|
|
|
|
|
для: serjinio
(31.10.2009 в 23:29)
| | Всмысле фильтравать!??? | |
|
|
|
|
|
|
|
для: clubxaliav
(01.11.2009 в 13:59)
| | http://ru.wikipedia.org/wiki/SQL_injection - вам будет очень полезно
$переменная = mysql_escape_string(stripslashes(htmlspecialchars($_post[])));
|
Тут все в кучу собрано :) | |
|
|
|
|
|
|
|
для: tvv123456
(01.11.2009 в 16:15)
| | >$переменная = mysql_escape_string(stripslashes(htmlspecialchars($_post[])));
>Тут все в кучу собрано :)
Это Вы зачем такую гнусь написали?
В википедии такого не было. | |
|
|
|
|
|
|
|
для: Trianon
(01.11.2009 в 16:24)
| | mysql_escape_string(stripslashes(htmlspecialchars($_post[])));
Это я все в кучу собрал что может иногда уберечь от разных казусов, чтоб показать что такие функции вообще существуют
Но тут думаю достаточно и mysql_escape_string() будет?
А если будет выводиться что-то пришедшее с другой страницы то и stripslashes(htmlspecialchars()) может не помешать | |
|
|
|
|
|
|
|
для: tvv123456
(01.11.2009 в 16:38)
| | ХМ..... А запретить то как на добавление 2ой ссылки (или другого значения)????
Малось уходим от вопроса,.... и разбераем мои ошибки!
Если у вас есть пример как это сделать будьте добры выложите!!! | |
|
|
|
|
|
|
|
для: clubxaliav
(01.11.2009 в 18:21)
| | Готовый скрипт? А есть ли смысл? Все таки послушайтесь Trianon скачайте учебник :)
Помочь человеку найти ошибку - благое дело :)
Написать все за него - глупо :)
Вы сначала внимательно разбиритесь в том что вам написали здесь участники и про if() тоже почитайте
$q = @mysql_query( "SELECT * FROM `rotator` WHERE uid='$un'" );
if( mysql_num_rows($q)>0 )
{
if ( $un !== $q['uid'] ) // чтобы выполнить такую проверку надо чтобы $q была массивом то
есть здесь вам надо узнать что такое
mysql_fetch_assoc,mysql_fetch_row и mysql_fetch_array
|
Чтобы можно было дальше вести разговор разберитесь с этим хотя бы | |
|
|
|
|
|
|
|
для: tvv123456
(01.11.2009 в 18:28)
| | Еще разок!!!
if (isset($_POST['url']) && isset($_POST['desk']) && isset($_POST['uid']) && isset($_POST['expired_date']))
{
@mysql_query("INSERT INTO `rotator` (`id`, `create_date`, `expired_date`, `url`, `desk`, `uid`, `clicks`) VALUES (NULL , '".date("Y-m-j H:i:s")."', '".$_POST['expired_date']."', '".$_POST['url']."', '".$_POST['desk']."', '".$_POST['uid']."', '' ); ");
}
|
Скрипт работает и добавляет, есть и форма и данные! и я не прошу написать за меня скрипт а всего лишь показать как прблизительно создать запрет на добавление 2 ссылки!!! И еще книги у меня есть, я сам скрипт этот не писал, а всего лишь его дополняю,.. по этому не будет одной ковычки скрипт работать не будет!
Заранее благодарю того кто реально поможет или даст ссылку где это можно глянуть, а не того кто тут попусту тратит время! | |
|
|
|
|
|
|
|
для: clubxaliav
(01.11.2009 в 20:47)
| | Дело в том, что у Вас вставка всегда будет работать даже если есть одна ссылка.
Вам надо было всего лишь изменить условие - если есть одна ссылка то выводим предупреждение, ИНАЧЕ добавляем новую запись
if ($_POST['url'] && $_POST['desk'] && $_POST['uid'] && $_POST['expired_date']){
$q = @mysql_query( "SELECT * FROM `rotator` WHERE uid='$un'" );
if( mysql_num_rows($q)>0 ) {
if ( $un !== $q['uid'] ) echo "<font color=red>У вас уже есть одна ссылка! </font><br><br>";
}else {
@mysql_query("INSERT INTO `rotator` (`id`, `create_date`, `expired_date`, `url`, `desk`, `uid`, `clicks`) VALUES (NULL , '".date("Y-m-j H:i:s")."', '".$_POST['expired_date']."', '".$_POST['url']."', '".$_POST['desk']."', '".$_POST['uid']."', '' ); ");
}
}
|
P.S. Все таки обратите внимание на сообщения которые были написаны по поводу безопасности... | |
|
|
|