eregi Posted June 11, 2009 Report Share Posted June 11, 2009 (edited) Tātad pirms kāda laika lasīju mārča rakstu kā pasargāt sevi no injekcijām, izveidojot atsevišķas funkcijas.. Takā neprotu lasīt viņa kodu ( laikam OOP ? ), tad domāju, kaut ko tādu sev uzcept. Insert funkciju es izveidoju - http://pastebin.com/m6c3e11c4 +/- laikam ir ok. :) tad nu interesēja varbūt kāds varētu ieteitk, ko darīt ar parastu qvēriju, teiksim biju domājis - function q($line) { $line = mysql_escape_string($line); $ret = mysql_query($line); return $ret; } bet, ja tiek padots get("SELECT * FROM ".db.".users WHERE Username='$uname' AND Login_key='$pass'") tad viss `nobrūk` laikam, jo tiek eskeipoti visi ", nevis tikai mainīgie. Tad nu domāju vai nevarētu ieteikt, kā to eskeipošanu varētu veikt? t.i, ko vēl varētu pievienot, lai eskeipo tikai padotos datus.. Labprāt arī redzētu citu veidotās funkcijas šajā jautājumā. p.s vēl gribēju uzzināt, ko nozīmē tie %s un %d iekš kvērija? Kopumā vēlējos uzzināt jūsu domas šajā jautājumā - vai ir jāveido tādas papildus funkcjas un kā tās veidot.. Edited June 11, 2009 by eregi Quote Link to comment Share on other sites More sharing options...
bubu Posted June 11, 2009 Report Share Posted June 11, 2009 Tev jāeskeipo (ar mysql_escape_string) tikai stringi, kurus liec/izmanto kverijā - tavā gadījumā $uname un $pass. Visu kveriju nevajag eskeipot. %s un %d nenozīmē neko iekš kverija. Tie nozīmē tikai kautko printf saimes funkcijām. Quote Link to comment Share on other sites More sharing options...
Indian Posted June 11, 2009 Report Share Posted June 11, 2009 (edited) p.s vēl gribēju uzzināt, ko nozīmē tie %s un %d iekš kvērija? tiek lietot print formatted funkcijā, gan jau citur arī %s - simbolu virkne %d - integers (signed -2147483647 ; 2147483647 , unsigned 4294967295 ) EDIT: oj ātrāk par mani atbildēja Edited June 11, 2009 by Indian Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.