Клубове Дир.бг
powered by diri.bg
търси в Клубове diri.bg Разширено търсене

Вход
Име
Парола

Клубове
Dir.bg
Взаимопомощ
Горещи теми
Компютри и Интернет
Контакти
Култура и изкуство
Мнения
Наука
Политика, Свят
Спорт
Техника
Градове
Религия и мистика
Фен клубове
Хоби, Развлечения
Общества
Я, архивите са живи
Клубове Дирене Регистрация Кой е тук Въпроси Списък Купувам / Продавам 19:38 19.06.24 
Компютри и Интернет
   >> PHP
*Кратък преглед

Тема Това не ми е ясно  
Автор hrisunko (непознат )
Публикувано27.02.01 20:41



Мога ли да напиша следното:
$query = "SELECT 1, 2, 3, 4 FROM Clubs WHERE '$in' LIKE '%$search_string%' ";?
Имам зададено от таг на друга страница <SELECT name="in"> с няколко обции, които имат съответното VALUE, което ще приеме променливата $in. Няма логика да не става, но не се получава на практика. Възможно е ако се определи нещо, което не се променя. Например WHERE 1= '$search_string'.
Напълно е възможно аз да не знам как става. Затова, моля помогнете да разреша този проблем.



Животът е такъв, какъвто си го направиш

Тема Re: Това не ми е яснонови [re: hrisunko]  
Автор phpGuruАдминистратор (новак)
Публикувано27.02.01 20:59



parvo da iziasnim ideata -
tarsish niakakav string vaveden ot potrebitelia $search_string koito da se sadarja v niakoe pole $in sashto opredeleno ot potrebitelia i triabva da mu izvedesh niakakvi poleta 1, 2, 3, 4

SELECT 1, 2, 3, 4 FROM Clubs WHERE '$in' LIKE '%$search_string%'

1. ne triabva da pishesh SELECT 1, 2, 3, 4, a imenata na poletata ot tablicata koito te interesuvat, zashtoto taka prosto shte vadi redove 1,2,3,4
2. '$in' triabva da e samo $in - imeto na poleto ne se ograjda v takiva kavichki (ne e dobra idea obache da davash na usera vazmojnost directno da pishe v SQL-a, t.e. tova pole $in triabva da go preobrazuvash chres switch() ili masiv do niakakvo vatreshna stoinost - e ne moga da se izraziavam ama tolko

)



Тема може бинови [re: hrisunko]  
Автор prinyo (непознат )
Публикувано27.02.01 21:04



Само предположение, защото съм още новак в тези неща, но мисля, че кавичките около $in в WHERE '$in' карат базата данни да разглежда това $in като стринг, а не като променлива. Затов тя търси не в полета, означени в променливата а вполе $in, което не съществува. Пробвай да махнеш кавичките или по някакъв начин да ги заобиколиш, не съм много сигурен как....



Тема :-))нови [re: phpGuru]  
Автор prinyo (непознат )
Публикувано27.02.01 21:12



Така е то...
заблееш се пет минути и те изпреварят...


Обаче имам един ламерски въпрос - какво толкова може да ми направи юзъра, ако ми бърка в базата по този начин?



Тема Пояснявамнови [re: phpGuru]  
Автор hrisunko (непознат )
Публикувано28.02.01 09:23



Пояснявам. Значи имам си таг <SELECT> на търсачка, който да ми търси по име, по друга стойност, по големина и т.н. 1,2,3,4 ги зададох като примерни, но даречем, че 1 отговаря на "име" от тага. Т.е. той сам избира по какъв показател да търси. Така $in става една променлива в зависимост от желанията на потребителя. Все пак не може да ми пипа нищо по базата данни, освен ако някой по-разбиращ се сети сам да зададе други стойности , но какво от това???!?!??!?! Има шанс само да види други данни, изнесени от базата при това само от ТАЗИ таблица.
Току-що пробвах без кавичките - стана!!!!!!! Благодаря много!!!!! Най се дразня ето от такива тъпи малки грешчици, причинени от една , ' " . и т.н. УЖАСНО Е! Особено ако не знаеш какво ще се получи :)))))

Ако имам друг проблем ще ви питам.

Благодаря ви за помощта


Тема Re: :-))нови [re: prinyo]  
Автор ViruS (®)
Публикувано04.03.01 01:41



Ми нещо безобидно... примерно да да въведе
; DROP DATABASE db
или някво такова... ако е в кавички няма опасност, щото даже да въведе
'; DROP DATABASE db
ще се набъркат magic_quotes и ще добавят една черта \ пред апострофчето... то май даже имаше възможност за по-гадни неща от DROP нещо си

We Are Fighting With Power And Steel
Fighting For Metal Metal That's Real


Тема Re: може бинови [re: prinyo]  
Автор ViruS (®)
Публикувано04.03.01 01:47



заради кавичките е, ама не е от това дето казваш... като напишеш "bla '$foo' bla bla", самото PHP го замяня със стойност... виж ако смениш местата на каввиччките и апостровите, тогава ще си остава текст непроменено.

We Are Fighting With Power And Steel
Fighting For Metal Metal That's Real


Тема Re: Това не ми е яснонови [re: hrisunko]  
Авторedmon (Нерегистриран)
Публикувано04.03.01 22:37



mnogo se pisa
ne se razbra samo pisatelia razbra li...
nai dobre idi i procheti na php.net
otnosno kavizhkite i apostrofite....
inache kazano v ednoto izraza se "oceniawa", a w drugoto ti se pokazva napravo.... a kogato stringa e SQL query ima i dopulnitelni uslownosti



Тема Re: Това не ми е яснонови [re: edmon]  
Автор hrisunko (непознат )
Публикувано06.03.01 19:41



Вижте сега какво съм разбрал. Първо ми стана ясно каква е функцията на кавичките в различните ситуации. Но не можах да разбера онова с DROP TABLE и DROP DATABASE. Опитах го, но не става нищо. Поразмислих и видях, че се получава следното:

значи аз си имам стринг $search_string в някаква FORM за HTML, който ще съдържа определна информация, която ще излезе от базата данни. Имам си и друга променлива, която е зададена чрез <select...> с две <option>, да речем $bla и $bla1. Като посетителя си избере едно от тях, то $search_string ще се насочи към таблицата $bla или $bla1 и ще търси само там.

Наистина има и друг начин. Да му се зададе от url-то. Например:
http://www.az_sym_tuk.com/bla_bla/file.php?search_string=нещо&in=bla
Резултата, вярвам, е същия.

Вие казвате да заменя стойността на $in с DROP DATABASE или DROP TABLE. Ами тогава просто $search_string ще се търси в таблицата "DROP......"
Той ще си мисли, че това е таблица. А не че това е някакво $query

$query-то ми е: SELECT еди какво си FROM $in WHERE нещо си LIKE %search_string% или подобен израз.
Аз не виждам заплаха. Не казвам, че няма, защото имаме достатъчно грамотни програмисти, които винаги могат да измислят нещо, ако имат желание. Все пак не го разбирам с каква цел ще се прави, но това е тема на друг разговор.

Кажете ми, моля, прав ли съм за тези неща по-горе, или пак греша.


Животът е такъв, какъвто си го направиш

Тема Re: Това не ми е яснонови [re: hrisunko]  
Автор ViruS (®)
Публикувано07.03.01 01:48



Ако е "bla bla $in bla bla" има заплаха... това $in ще го замени PHP-то и тогава ще замине към MySQL-а... измисли такава стойност на $in, че да се получат 3 валидни заявки, разделени с ;... и гледай да нямя кавички в $in, че най вероятно ще получат по една наклонена пред себе си.

We Are Fighting With Power And Steel
Fighting For Metal Metal That's Real



*Кратък преглед
Клуб :  


Clubs.dir.bg е форум за дискусии. Dir.bg не носи отговорност за съдържанието и достоверността на публикуваните в дискусиите материали.

Никаква част от съдържанието на тази страница не може да бъде репродуцирана, записвана или предавана под каквато и да е форма или по какъвто и да е повод без писменото съгласие на Dir.bg
За Забележки, коментари и предложения ползвайте формата за Обратна връзка | Мобилна версия | Потребителско споразумение
© 2006-2024 Dir.bg Всички права запазени.