
07.08.2009, 00:41
|
|
Участник форума
Регистрация: 24.02.2006
Сообщений: 206
Провел на форуме: 2735257
Репутация:
103
|
|
Сообщение от geforse
PHP код:
/* Не работает :( */
if($_GET['id'])
{
if (!preg_match ("/^[0-9]$/i" , $_GET['id'])){exit;}
}
у меня есть ссылка вида page.php?id=287201
Параметр id принимает только значения rand(0,7777777), выше указанный код не корректно работает, при любых значениях id скрипт продолжает работать 
вместо
PHP код:
if (!preg_match ("/^[0-9]$/i" , $_GET['id'])){exit;}
Делаем
PHP код:
if (!is_numeric($_GET['id'])) {exit;}
Твой код неоднозначный, он возвращает не true или false, а число значений найденных...
|
|
|

07.08.2009, 01:14
|
|
Он хакер.
Регистрация: 01.11.2008
Сообщений: 1,756
Провел на форуме: 6462214
Репутация:
3171
|
|
И вот у меня вопрос,который я постараю сформировать правильно =).
Собственно,давно уже пишу для себя всякие мини сайты,поисковики,качалки,а минки к сплоентам и бекдорам,и вот решился написать для себя кое что крупное так сказать.По сути - все готово.Но.
Я привык использовать либо свои маленькие шаблонизаторы(по сути простые стр_реплайсы),а тут решил использовать настоящий шаблонизатор,заодно подучиться этому делу.
Так вот собственно куда я клоню.
Раньше,я писал както так.
Content.tpl
PHP код:
<html>
теги...
{CONTENT}
</html>
И например,если в админке нажимаем на кнопочку: добавить статью,то в самой админке происходит примерно следующее.
admin.php
PHP код:
$content = file_get_contents('template/contents.tpl');
$form = fie_get_contsnts('temp/form.tpl);
$template = str_replace('{CONTENT},$form,$content);
Собственно говоря,таким вот нехитрым образом я получал форму на странице.
В файле form.tpl лежит готовый код формы,и прочего.
---------------------------
Это оччччеееень не удобный способ.И собственно,когда я начал писать тот сайт,который я пишу сейчас,я сразу понял - такое тут не прокатит.Маленькая кучка статей мне не помогла.
Так вот вопрос.Как дулать правильно? Как хотябы конкретно на том случае что я разобрал,с использованием шаблонизатора,было бы правильно? Вот что меня интересует.
Я всегда говорил что с шаблонами у меня беда.Слава богу хоть научился отделять код от шаблонов 
Ну всем спасибки,жду ответа)
|
|
|

07.08.2009, 15:39
|
|
Постоянный
Регистрация: 02.03.2008
Сообщений: 893
Провел на форуме: 5365841
Репутация:
712
|
|
PHP код:
/* Работает */
mysql_query("INSERT INTO comments (date) VALUES (NOW())");
/* Не работает :( */
mysql_query("INSERT INTO `comments` (`date`,`bla`) VALUES ('".NOW()."', ".addslashes($bla)."')") or die(mysql_error()); //line 9
Fatal error: Call to undefined function NOW() in comments.php on line 9
|
|
|

07.08.2009, 15:54
|
|
Постоянный
Регистрация: 02.03.2008
Сообщений: 893
Провел на форуме: 5365841
Репутация:
712
|
|
PHP код:
$time = date('Y-m-d G:i:s'); //или твой формат даты
$bla = $_POST['pic'];
mysql_query("INSERT INTO `comments` (`date`,`gallery`) VALUES ('" . $time . "', ".addslashes($bla)."')") or die(mysql_error()); //line 9
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '')' at line 1
|
|
|

07.08.2009, 16:06
|
|
Постоянный
Регистрация: 03.06.2009
Сообщений: 385
Провел на форуме: 3178262
Репутация:
389
|
|
У тебя now() исполняется как функция php =)
PHP код:
mysql_query("INSERT INTO `comments` (`date`,`bla`) VALUES (NOW(), '".addslashes($bla)."')") or die(mysql_error()); //line 9
NOW() - функция MySQL и её нужно брать без кавычек =)
Если хочешь в PHP генерировать дату, то
PHP код:
$time = date('Y-m-d G:i:s'); //или твой формат даты
mysql_query("INSERT INTO `comments` (`date`,`bla`) VALUES ('" . $time . "', '".addslashes($bla)."')") or die(mysql_error())
p.s. ты забыл кавычку открывающую перед аддслешс =)
p.s.s. я обновил
|
|
|

07.08.2009, 18:11
|
|
Участник форума
Регистрация: 31.12.2007
Сообщений: 279
Провел на форуме: 1725509
Репутация:
114
|
|
<tr>
<td class="bg_color2" align="right"width="130">Ф.И.О.</td>
<td class="bg_color4">Рассказова Юлия Владимировна</td>
Подскажите регулярку чтоб выдрать ФИО.
PHP код:
preg_match('#<td class="bg_color2" align="right" width="130">Ф.И.О.</td><td class="bg_color4">(*)</td>#Ui', $responce, $result);
Неработает т.к написано с новой строки
|
|
|

07.08.2009, 18:18
|
|
Познавший АНТИЧАТ
Регистрация: 23.08.2007
Сообщений: 1,237
Провел на форуме: 18127311
Репутация:
1676
|
|
попробуй типа
#/Ф\.И\.О\.<\/td>\r\n<td class="bg_color4">(.+?)<\/td>/s#
|
|
|

07.08.2009, 18:31
|
|
Познавший АНТИЧАТ
Регистрация: 24.06.2008
Сообщений: 1,996
Провел на форуме: 6075534
Репутация:
2731
|
|
|
|
|

07.08.2009, 18:36
|
|
Постоянный
Регистрация: 15.06.2008
Сообщений: 941
Провел на форуме: 5111568
Репутация:
2399
|
|
PHP код:
if (preg_match('/<td class="bg_color4">(\w+\s\w+\s\w+)<\/td>/',$a,$m))
print $m[1];
|
|
|

07.08.2009, 18:41
|
|
Познавший АНТИЧАТ
Регистрация: 24.06.2008
Сообщений: 1,996
Провел на форуме: 6075534
Репутация:
2731
|
|
eLWAux, ты опоздал... Ответ на этот вопрос был дан 20мин. перед тобой 
Страница в кеше, чтоли?
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|