Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.07.2014, 15:21   #1
volodjavolodja
 
Регистрация: 25.07.2014
Сообщений: 3
По умолчанию Возникли проблемы с "не слишком хорошим кодом".

Добрый день,

Возникли проблемы с "не слишком хорошим кодом".
Ситуация затруднительна.
Есть много запросов такого вида:
PHP код:
$sql ​​= " Select * from table where` id `= ' . $id . ' "; 
Возможно кто-то имеет большую практику в перестройке таких "не хороших кодов".
Файлов с таким видом очень много еще более запутанно.
Нужно переписать все в
Цитата:
PDO
.
Запросы даже не икрануються минимально - хотя это не поможет от инъекций.
Но как автоматизировать?
Руками очень будет долго и трудно.

С уважением,

Володя
volodjavolodja вне форума Ответить с цитированием
Старый 25.07.2014, 16:10   #2
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,157
По умолчанию

именно руками
ADSoft вне форума Ответить с цитированием
Старый 25.07.2014, 16:28   #3
volodjavolodja
 
Регистрация: 25.07.2014
Сообщений: 3
По умолчанию

Это будет очень трудно.
volodjavolodja вне форума Ответить с цитированием
Старый 25.07.2014, 18:41   #4
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,157
По умолчанию

Ну одинаковые куски можно заменить с промощью текстовых редакторов, но все равно будут куски немного отличающиеся , а это ручками
ADSoft вне форума Ответить с цитированием
Старый 25.07.2014, 19:58   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
таких "не хороших кодов".
Я не понял а что именно тут нехорошо сделано?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 25.07.2014, 22:03   #6
Kostia
Участник клуба
 
Аватар для Kostia
 
Регистрация: 21.11.2007
Сообщений: 1,690
По умолчанию

Код:
Select * from table where` id `= ' . $id . '
если нет $id = (int) $request->id; или хотябы экранирования, то можно передать $id = 0' or '1 и select выдаст всю таблицу.
Код:
SELECT * FROM table WHERE id = '0' or '1'
И так с любым запросом для любого параметра и при определенной доли везения можно выудить таблицу с пользователями/сессиями. Этим обычно школьники балуются.
$id = -1' UNION SELECT * FROM users WHERE '1;
Код:
SELECT * FROM table WHERE id = '-1' UNION SELECT * FROM users WHERE '1'

Последний раз редактировалось Kostia; 25.07.2014 в 22:06.
Kostia вне форума Ответить с цитированием
Старый 29.07.2014, 12:05   #7
volodjavolodja
 
Регистрация: 25.07.2014
Сообщений: 3
По умолчанию

Я понял

авпвап












папвапв
volodjavolodja вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Постоянно слетает галочка "автоматически" в "Параметры Excel", "Формулы", "Вычисления в книге" Alexsandrr Microsoft Office Excel 4 19.10.2013 14:22
Слишком большой "count" HellMercenariess Общие вопросы Delphi 1 12.06.2012 02:21
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" aleksei78 Microsoft Office Excel 13 25.08.2009 12:04
Excel выдает ошибку "слишком много различных форматов ячеек" Рогачева Татьяна Microsoft Office Excel 2 14.04.2009 08:50