Re: [Python] Esclusione della query vuota
On 09/11/2014 09:07 AM, Juri Rudi wrote: Solo quando ce l'ho :) Io non vedo ragione in questo caso. Perche` il tuo accanimento significa non voler migliorare anche in cose che fanno parte dei nostri interessi primari (e.g. e` come se io non tentassi di migliorare costantemente il mio modo di correre, nonostante non faccia il corridore come sport). A peggiorare la tua situazione e` anche il fatto che la soluzione a SQL Injection e` semplice, e ti e` stata mostrata da Raffele Salmaso. A questo punto non so nemmeno se ti vorrei come avvocato (o si, visto il tuo intenstardimento?) Enrico ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Il giorno 13/set/2014, alle ore 19:01, Enrico Bianchi enrico.bian...@ymail.com ha scritto: Io non vedo ragione in questo caso. Perche` il tuo accanimento significa non voler migliorare anche in cose che fanno parte dei nostri interessi primari (e.g. e` come se io non tentassi di migliorare costantemente il mio modo di correre, nonostante non faccia il corridore come sport). A peggiorare la tua situazione e` anche il fatto che la soluzione a SQL Injection e` semplice, e ti e` stata mostrata da Raffele Salmaso. A questo punto non so nemmeno se ti vorrei come avvocato (o si, visto il tuo intenstardimento?) Faccio l'avvocato del diavolo di questo diavolo di avvocato. Allora Juri (che tra l'altro ha un destino di legge nel nel suo nome) a differenza di altri suoi colleghi dimostra la voglia di usare strumenti informatici direttamente invece di limitarsi a commissionare quello che gli serve. Non credo certo lo faccia per risparmiare dei soldi ma solo perchè è un appassionato e la cosa gli fa onore. Scrive alla lista per cercare un aiuto su un problema che magari per chi ci lavora tutti i giorni è banale ma che per chi ci si dedica per una minima parte del suo tempo, può rivelarsi difficoltoso. Probabilmente non avendo compreso perfettamente l'uso dalle API per SQL di python, non conosce il fatto che invece di passare un testo della query, includendo i parametri, è normale passare il testo con dei placeholders e dei parametri che poi verranno internamente inseriti nel testo opportunamente serializzati e quotati nel caso. Il buon Daniele gli fa il classico scherzetto per indicargli che questa modalità non è certo consigliabile ed il nostro avvocato si giustifica dicendo che tanto è per suo uso personale. Lo fa perchè probabilmente crede di doversi sobbarcare mille controlli sui possibili tranelli che una sql injection può avere. Quasi certamente ignora che basta passare i parametri ed è tutto fatto. Però, forse un poco piccato, o forse per orgoglio, non chiede come dovrebbe fare ma insiste nel dire che per quello che serve a lui non vale la pena. Insomma, signori della corte, chiedo per il mio patrocinato una piena assoluzione perchè il fatto non sussiste e mi permetto anche di suggerire un applauso di incoraggiamento per chi, pur facendo un'altra professione, ama sporcarsi le mani con la programmazione. G. P.S. Avvocato, non tema la mia parcella. Il mio è un intervento pro bono :D ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
like! Il giorno 13 settembre 2014 19:27, Giovanni Porcari giovanni.porc...@softwell.it ha scritto: Il giorno 13/set/2014, alle ore 19:01, Enrico Bianchi enrico.bian...@ymail.com ha scritto: Io non vedo ragione in questo caso. Perche` il tuo accanimento significa non voler migliorare anche in cose che fanno parte dei nostri interessi primari (e.g. e` come se io non tentassi di migliorare costantemente il mio modo di correre, nonostante non faccia il corridore come sport). A peggiorare la tua situazione e` anche il fatto che la soluzione a SQL Injection e` semplice, e ti e` stata mostrata da Raffele Salmaso. A questo punto non so nemmeno se ti vorrei come avvocato (o si, visto il tuo intenstardimento?) Faccio l'avvocato del diavolo di questo diavolo di avvocato. Allora Juri (che tra l'altro ha un destino di legge nel nel suo nome) a differenza di altri suoi colleghi dimostra la voglia di usare strumenti informatici direttamente invece di limitarsi a commissionare quello che gli serve. Non credo certo lo faccia per risparmiare dei soldi ma solo perchè è un appassionato e la cosa gli fa onore. Scrive alla lista per cercare un aiuto su un problema che magari per chi ci lavora tutti i giorni è banale ma che per chi ci si dedica per una minima parte del suo tempo, può rivelarsi difficoltoso. Probabilmente non avendo compreso perfettamente l'uso dalle API per SQL di python, non conosce il fatto che invece di passare un testo della query, includendo i parametri, è normale passare il testo con dei placeholders e dei parametri che poi verranno internamente inseriti nel testo opportunamente serializzati e quotati nel caso. Il buon Daniele gli fa il classico scherzetto per indicargli che questa modalità non è certo consigliabile ed il nostro avvocato si giustifica dicendo che tanto è per suo uso personale. Lo fa perchè probabilmente crede di doversi sobbarcare mille controlli sui possibili tranelli che una sql injection può avere. Quasi certamente ignora che basta passare i parametri ed è tutto fatto. Però, forse un poco piccato, o forse per orgoglio, non chiede come dovrebbe fare ma insiste nel dire che per quello che serve a lui non vale la pena. Insomma, signori della corte, chiedo per il mio patrocinato una piena assoluzione perchè il fatto non sussiste e mi permetto anche di suggerire un applauso di incoraggiamento per chi, pur facendo un'altra professione, ama sporcarsi le mani con la programmazione. G. P.S. Avvocato, non tema la mia parcella. Il mio è un intervento pro bono :D ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python -- @salvatoremonaco http://blog.smitsolution.net ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Il 11/set/2014 00:43 Juri Rudi rudij...@gmail.com ha scritto: Diciamo che se un servizio non è esposto né al web né all'uso di terzi, non tutte le cautele sono necessarie, imho. Se la rubrica in questione la uso solo io e dovessi auto proteggermi da sql injection, farei meglio ad attaccare i tubi con lo scotch. Comunque grazie, ho risolto. Judi, un bravo programmatore deve fare le cose nel modo giusto. Sempre. Continuare a dire che lo usi solo tu, che non serve sanitizzare la query, ecc. non solo non convincerà nessuno qui dentro che sia accettabile farlo, ma anche che tu sia pigro nel senso sbagliato: quello che non ti fa imparare. E per un programmatore questo tipo di pigrizia è esiziale. Ciao. Marco. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Juri Rudi rudij...@gmail.com wrote: Se la rubrica in questione la uso solo io e dovessi auto proteggermi da sql injection, farei meglio ad attaccare i tubi con lo scotch. The first public discussions of SQL injection started appearing around 1998. stiamo parlando dell'abc della programmazione, come posso fidarmi di un programmatore che rifiuta persino consigli su una materia tanto importante? se una cosa ti abitui a farla in un modo sbagliato non migliori. se devi fare una cosa per te, la fai con il massimo della cura. io se uno attacca i tubi con lo scoth, lo bollo come incompetente. -- Simone Federici Software Craftsman XP, Agile, Scrum, Kanban Quality, performance security Explicit is better than implicit. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Il giorno 11/set/2014, alle ore 08:14, Simone Federici s.feder...@gmail.com ha scritto: , come posso fidarmi di un programmatore Faccio l'avvocato. io se uno attacca i tubi con lo scoth, lo bollo come incompetente. Faresti bene, se fosse un idraulico, specie se lo facesse nel bagno di un cliente. Saresti troppo severo se pretendessi la stessa competenza, cura e meticolosità da chi gioca con due tubi per diletto rischiando, al più, di fare qualche schizzetto d'acqua in giardino. Comunque grazie, il metodo competente e meticoloso lo condivido, anche per gli hobby. Ma ciascuno ha i propri limiti, e per fare ciò che responsabilmente mi intimate di fare con la mia rubrichetta va al di là dei miei, per competenza e tempo.___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Il 11/set/2014 08:27 Juri Rudi rudij...@gmail.com ha scritto: Il giorno 11/set/2014, alle ore 08:14, Simone Federici s.feder...@gmail.com ha scritto: , come posso fidarmi di un programmatore Faccio l'avvocato. Questo siega il tuo accanimento nel voler avere ragione :-) Scherzi a parte allora mi sta bene che tu non faccia le cose nel modo giusto (tra l'altro uno è libero di farle come vuole comunque, anche se fa il programmatore). Però questa è la prima e unica motivazione che dovevi dare, altrimenti è come se in un forum di idraulici cerchi di sostenere che sia accettabile usare lo scotch. Ciao. Marco. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Il giorno 11/set/2014, alle ore 08:25, Juri Rudi rudij...@gmail.com ha scritto: Il giorno 11/set/2014, alle ore 08:14, Simone Federici s.feder...@gmail.com ha scritto: , come posso fidarmi di un programmatore Faccio l'avvocato. Quindi se io pretendessi sbrigarmela da solo in una questione legale e scrivessi ad una lista di avvocati per avere un suggerimento su come interpretare l'articolo 34 della legge 66556, ed questi mi facessero notare che la legge è abrogata da 50 anni io potrei ragionevolmente affermare che tanto non sono un avvocato professionista e quindi non sono tenuto a conoscere le leggi ??? Dammi retta fallo nel modo giusto. Adesso non ti serve ma se domani ti dovesse servire almeno lo sai fare. Non è che ci si metta molto di più, anzi, il modo giusto è veloce ed elegante. :) Ciao G. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Il giorno 11/set/2014, alle ore 08:40, Marco Beri marcob...@gmail.com ha scritto: Il 11/set/2014 08:27 Juri Rudi rudij...@gmail.com ha scritto: Il giorno 11/set/2014, alle ore 08:14, Simone Federici s.feder...@gmail.com ha scritto: , come posso fidarmi di un programmatore Faccio l'avvocato. Questo siega il tuo accanimento nel voler avere ragione :-) Solo quando ce l'ho :) Nel mio caso (script per hobby finalizzato ad un a rubrichetta off line che utilizzo solo io), attuare PRIMA DI OGNI COSA la sanitizzazione delle tabelle contro sql injection sarebbe assurdo. Capisco, invece, che tutti i programmatori seri siano partiti da là: il primo script sql di tutti voi, anche solo di prova o per gioco, è stato contro la query malevola, altrui o addirittura masochisticamente propria, capace di fare il drop delle tabelle. Ci scommetterei un ricorso per Cassazione :)___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Il giorno 11/set/2014, alle ore 09:07, Juri Rudi rudij...@gmail.com ha scritto: il primo script sql di tutti voi, anche solo di prova o per gioco, è stato contro la query malevola, altrui o addirittura masochisticamente propria, capace di fare il drop delle tabelle. Comunque, se può servire, la mia domanda non era su sql injection: se questa lista fosse una table mysql, dovrebbe essere sanitizzata :) ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
2014-09-11 9:07 GMT+02:00 Juri Rudi rudij...@gmail.com: Il 11/set/2014 08:27 Juri Rudi rudij...@gmail.com ha scritto: Il giorno 11/set/2014, alle ore 08:14, Simone Federici s.feder...@gmail.com ha scritto: , come posso fidarmi di un programmatore Faccio l'avvocato. Questo siega il tuo accanimento nel voler avere ragione :-) Solo quando ce l'ho :) Nel mio caso (script per hobby finalizzato ad un a rubrichetta off line che utilizzo solo io), attuare PRIMA DI OGNI COSA la sanitizzazione delle tabelle contro sql injection sarebbe assurdo. No, è recuperare i dati che ti servono in maniera corretta. Nel tuo modo (creando la query a mano) hai potenziali problemi alla finestra che stanno aspettando, senza stare a pensare alla sicurezza. Metti che hai un cognome come D'Adamo e sei spacciato, la tua query perde di significato. Capisco, invece, che tutti i programmatori seri siano partiti da là: il primo script sql di tutti voi, anche solo di prova o per gioco, è stato contro la query malevola, altrui o addirittura masochisticamente propria, capace di fare il drop delle tabelle. Scusa, ma non mi sembra sia poi così tragico cambiare da sql = .. %s %s .. % (p1,p2,) c.execute(sql) a sql = ... %s %s ... c.execute(sql, (p1, p2)) anzi risparmi dei caratteri ;) Per il resto, se non accetti consigli (banali o avanzati che siano) su come gestire correttamente le query con python, come pensi si voglia dare una mano per un problema di come impostare una query sql che faccia quello che chiedi che con python (e il gruppo su cui posti) non c'entra nulla? Io non ne ho voglia. Ci scommetterei un ricorso per Cassazione :) ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python -- | Raffaele Salmaso | http://salmaso.org | https://bitbucket.org/rsalmaso | http://gnammo.com ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Il giorno 11/set/2014, alle ore 09:21, Raffaele Salmaso raffa...@salmaso.org ha scritto: Scusa, ma non mi sembra sia poi così tragico cambiare da sql = .. %s %s .. % (p1,p2,) c.execute(sql) a sql = ... %s %s ... c.execute(sql, (p1, p2)) Lo farò, grazie. Ma il mio problema, adesso, era un altro. Io non ne ho voglia. Capisco.___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
select cognome, nome, paese from rubrica where (cognome = '%s' OR nome = '%s' OR paese = '%s' se usi OR significa che nei risultatiti aspetti o i record con la città di bologna oppure anche quelli che hanno un certo cognome. solitamente si usa AND, perchè se un utente scrive sia la città che il cognome vuole filtrare i risultati su entrambi. inoltre si usa solitamente il LIKE e il lower. detto questo, se vuoi interrogare il database con i soli campi inseriti devi scrivere la query in passi successivi. conditions = [] if cognome.get(): conditions.append((LOWER(cognome) = %s, cognome.get())) if nome.get(): conditions.append((LOWER(nome) = %s, nome.get())) if paese.get(): conditions.append((LOWER(paese) = %s, paese.get())) if not conditions: conditions.append((0=%s, 1)) sql = select cognome, nome, paese from rubrica where %s % AND .join([s for s, v in contitions]) c.execute(sql, ['%%s%' % v.lower() for s, v in contitions if v]) PS. non ti chiederò mai aiuto se avessi bisogno di un avvocato ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
inoltre si usa solitamente il LIKE e il lower a tal proposito scrivi LOWER(paese) LIKE %s ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
2014-09-11 10:38 GMT+02:00 Simone Federici s.feder...@gmail.com: non ti chiederò mai aiuto se avessi bisogno di un avvocato Ecco, questo intendevo come rischio. Magari sei un avvocato eccezionale, ma l'atteggiamento delle persone di fronte ai problemi di solito non cambia e da questo deriva il commento, salace e sagace, di Simone. Per esempio io spesso tendo a provare a risolvere da solo senza leggere i manuali di istruzione prima. Nove volte su dieci faccio prima degli altri ma alla decima, spesso, ci perdo tutto il tempo che ho guadagnato le altre volte. E` un mio difetto, lo so e me lo tengo. Ma questo atteggiamento, pari pari, ce l'ho in molti settori della vita: informatica, fai da te in casa, elettrodomestici, Lego, pratica per la patente da privatista di mio figlio, ecc. :-) Ciao. Marco. -- http://beri.it/ - Un blog http://beri.it/i-miei-libri/ - Qualche libro ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Scusate, conosco python ma non in maniera cosi' approfondita. Ma : import MySQLdb as my stringa = Daniele'; DROP TABLE rubrica; -- stringa = my.escape_string(stringa) sql = ... %s ... c.execute(sql, (stringa)) ... non risolve il problema? Il giorno 11 settembre 2014 11:04, Marco Beri marcob...@gmail.com ha scritto: 2014-09-11 9:07 GMT+02:00 Juri Rudi rudij...@gmail.com: Nel mio caso (script per hobby finalizzato ad un a rubrichetta off line che utilizzo solo io), attuare PRIMA DI OGNI COSA la sanitizzazione delle tabelle contro sql injection sarebbe assurdo. Fidati: non e` assurdo. Non insistero` oltre ma, davvero, fidati (l'esempio di Giovanni e la lista di avvocati regge benissimo). Ciao. Marco. -- http://beri.it/ - Un blog http://beri.it/i-miei-libri/ - Qualche libro ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python -- Riccardo Brazzale Linux User #299418 Linux Machine #184578 ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Riccardo Brazzale riccardo.brazz...@gmail.com: stringa = my.escape_string(stringa) non serve, l'escape è gestito automaticamente dalle API c.execute(sql, (Daniele'; DROP TABLE rubrica; --,)) quello che non bisogna assolutamente fare è c.execute(sql % (Daniele'; DROP TABLE rubrica; --,)) ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Il 11/09/2014 11:17, Marco Beri ha scritto: 2014-09-11 10:38 GMT+02:00 Simone Federici s.feder...@gmail.com mailto:s.feder...@gmail.com: non ti chiederò mai aiuto se avessi bisogno di un avvocato Ecco, questo intendevo come rischio. Magari sei un avvocato eccezionale, ma l'atteggiamento delle persone di fronte ai problemi di solito non cambia e da questo deriva il commento, salace e sagace, di Simone. Ciascuno è libero di scegliersi l'avvocato in base a come configura il proprio database mysql. In particolare, chiunque abbia un problema di usucapione farebbe bene a stare alla larga da un legale che non configuri il proprio database in modo da evitare che egli stesso dia il comando di drop. Mi raccomando. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Il 11/09/2014 10:53, Simone Federici ha scritto: inoltre si usa solitamente il LIKE e il lower a tal proposito scrivi LOWER(paese) LIKE %s Grazie, finalmente una risposta in topic. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
2014-09-11 11:54 GMT+02:00 Juri Rudi rudij...@gmail.com: Il 11/09/2014 11:17, Marco Beri ha scritto: 2014-09-11 10:38 GMT+02:00 Simone Federici s.feder...@gmail.com: non ti chiederò mai aiuto se avessi bisogno di un avvocato Ecco, questo intendevo come rischio. Magari sei un avvocato eccezionale, ma l'atteggiamento delle persone di fronte ai problemi di solito non cambia e da questo deriva il commento, salace e sagace, di Simone. Ciascuno è libero di scegliersi l'avvocato in base a come configura il proprio database mysql. In particolare, chiunque abbia un problema di usucapione farebbe bene a stare alla larga da un legale che non configuri il proprio database in modo da evitare che egli stesso dia il comando di drop. Mi raccomando. Uhm... vedo che sono riuscito a spiegarmi proprio bene :-) Ciao. Marco. -- http://beri.it/ - Un blog http://beri.it/i-miei-libri/ - Qualche libro ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Il 11/09/2014 12:05, Marco Beri ha scritto: 2014-09-11 11:54 GMT+02:00 Juri Rudi rudij...@gmail.com mailto:rudij...@gmail.com: Il 11/09/2014 11:17, Marco Beri ha scritto: 2014-09-11 10:38 GMT+02:00 Simone Federici s.feder...@gmail.com mailto:s.feder...@gmail.com: non ti chiederò mai aiuto se avessi bisogno di un avvocato Ecco, questo intendevo come rischio. Magari sei un avvocato eccezionale, ma l'atteggiamento delle persone di fronte ai problemi di solito non cambia e da questo deriva il commento, salace e sagace, di Simone. Ciascuno è libero di scegliersi l'avvocato in base a come configura il proprio database mysql. In particolare, chiunque abbia un problema di usucapione farebbe bene a stare alla larga da un legale che non configuri il proprio database in modo da evitare che egli stesso dia il comando di drop. Mi raccomando. Uhm... vedo che sono riuscito a spiegarmi proprio bene :-) No no, ti sei spiegato benissimo: tecnicamente, si tratta di una fallacia (nella specie: indebita generalizzazione, fondata su mera induzione, peraltro su dati causalmente irrilevanti) :) Ma il pensiero è libero :) Meno, quello strettamento logico :) ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Marco Beri marcob...@gmail.com: Uhm... vedo che sono riuscito a spiegarmi proprio bene :-) Veramente credi di avere le doti per capire un avvocato? Avvocato i nasce non si diventa. cmq è inutile prendere sul serio questa conversazione dall'altra parte si ha solo una persona che sa solo prendere in giro tutti. propongo un ban immediato a tutti gli avvocati infiltrati in questa lista ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Il giorno 11 settembre 2014 12:28, Simone Federici s.feder...@gmail.com ha scritto: propongo un ban immediato a tutti gli avvocati infiltrati in questa lista e anche degli idraulici! :D ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Il 11/09/2014 13:23, AlberTo De Prezzo ha scritto: Il giorno 11 settembre 2014 12:28, Simone Federici s.feder...@gmail.com mailto:s.feder...@gmail.com ha scritto: propongo un ban immediato a tutti gli avvocati infiltrati in questa lista e anche degli idraulici! :D Sul primo ban, voto a favore (dopo l'auto-sql injecton, non c'è da meravigliarsi di nulla). Ma dei secondi e soprattutto del loro scotch abbiamo tutti troppo bisogno, pensateci bene. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Il giorno 11 settembre 2014 12:47, Simone Federici s.feder...@gmail.com ha scritto: Daniele Varrazzo p...@develer.com: Io propongo di darci un taglio e accettare che ci sono persone che hanno obiettivi diversi dai vostri. Eccheccazzo, state a ricama' da stamattina, sembrate delle vecchie in chiesa. Gli s'e' detto quello che gli si doveva dire: direi che basta cosi' no? Ogni volta che c'e' una voce diversa dal coro sembrate un branco di scimmie. hai ragione basta ricami... non voglio fare la parte dell'avvocato(!!!) difensore di simone federici, marco beri e degli altri (non ne hanno bisogno), ma vorrei spezzare una *arancia* a loro favore: sappiamo tutti che le ML sono spesso utilizzate per la ricerca di soluzioni anche da chi non è iscritto, e spesso è neofita e magari anche frettoloso nella lettura. Far passare un messaggio *sbagliato* è sempre da evitare, e percio' bene hanno fatto a sottolinearlo con tripla matita blu. don't try this at home! saluti (e come dice mio zio.. vogliamoci bene) :D ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Marco Beri wrote: che tu sia pigro nel senso sbagliato: quello che non ti fa imparare. E per un programmatore questo tipo di pigrizia è esiziale. Pensi di fargli venire voglia di imparare costringendolo ad usare il vocabolario? :-) -- Nicola 'tekNico' Larosa http://www.tekNico.net/ Any fool can write code that a computer can understand. Good programmers write code that humans can understand. - Martin Fowler, 1999 ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Nicola Larosa n...@teknico.net wrote: Pensi di fargli venire voglia di imparare costringendolo ad usare il vocabolario? :-) Un altra cosa essenziale per essere un buon programmatore è il quoziente RP. Più è alto e più sei bravo. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Juri Rudi wrote: Comunque, se può servire, la mia domanda non era su sql injection: se questa lista fosse una table mysql, dovrebbe essere sanitizzata :) Ma nessuno gli dice di stare alla larga da MySQL? Davero davero? :-o -- Nicola 'tekNico' Larosa http://www.tekNico.net/ Sadly, the human brain came without documentation, like most open source projects. Luckily, we have many people who worked on understanding the human brain. Writing code meant to execute on brains is easier, and more efficient, after reading what sparse documentation we do have. - Moshe Zadka, March 2011 ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
On 11 September 2014 15:02, Nicola Larosa n...@teknico.net wrote: Ma nessuno gli dice di stare alla larga da MySQL? Davero davero? :-o Ho idea che debba sbatterci il muso da se per vaccinarsi. Carlos -- EZLN ... Para Todos Todo ... ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Il 11/09/2014 15:02, Nicola Larosa ha scritto: Juri Rudi wrote: Comunque, se può servire, la mia domanda non era su sql injection: se questa lista fosse una table mysql, dovrebbe essere sanitizzata :) Ma nessuno gli dice di stare alla larga da MySQL? Davero davero? :-o Non mi sognerei mai di intimare a chicchessia di tenersi alla larga dal diritto, quasi fosse una materia riservata alla setta esclusiva dei giuristi, di cui pretenderei l'esclusiva. Anzi, quando un cliente mi chiede un parere legale perché deve fare una certa operazione giuridica come ad esmepio acquistare un immobile, semmai gli correggo la bozza del preliminare, ma non gli intimo mica di stare alla larga dalla negoziazione. Vabe', evidentemente non siamo tutti uguali. Meglio così. Dopo tutti i vs. consigli, voglio darvene anch'io uno inutile. Non dovete essere gelosi di chi, come me, per diletto (ripeto: per puro diletto), scrive due righe di codice in python ed sql per farsi una rubrichetta personale, che peraltro -sia detto per inciso- funziona da Dio (anche questo non deve dispiacervi). Comunque, per me questo thread, dal quale ho imparato abbastanza (sebbene non di programmazione, ma sull'umana esistenza) finisce qua e vi ringrazio. Statemi bene. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Il giorno 11 settembre 2014 15:12, Juri Rudi rudij...@gmail.com ha scritto: Il 11/09/2014 15:02, Nicola Larosa ha scritto: Juri Rudi wrote: Comunque, se può servire, la mia domanda non era su sql injection: se questa lista fosse una table mysql, dovrebbe essere sanitizzata :) Ma nessuno gli dice di stare alla larga da MySQL? Davero davero? :-o Non mi sognerei mai di intimare a chicchessia di tenersi alla larga dal diritto, quasi fosse una materia riservata alla setta esclusiva dei giuristi, di cui pretenderei l'esclusiva. guarda che Nicola non intedeva dire stare alla larga dai database bensì, come ha detto testualmente, stare alla larga da MySQL molto meglio sqlite per cose piccole o postgres per cose più grosse MySQL ha un sacco di magagne e il fatto che sia così diffuso non significa che che sia valido se per caso ti interessasse approfondire questo punto puoi trovare molto in rete Marco ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Nicola Larosa n...@teknico.net wrote: Ma nessuno gli dice di stare alla larga da MySQL? Davero davero? Chi fa l'avvocato del diavolo oggi? ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Nicola Larosa ha scritto: Ma nessuno gli dice di stare alla larga da MySQL? Davero davero? :-o Juri Rudi wrote: Non mi sognerei mai di intimare a chicchessia di tenersi alla larga dal diritto, quasi fosse una materia riservata alla setta esclusiva dei giuristi, di cui pretenderei l'esclusiva. MySQL è un programma che impersona malamente un gestore di database relazionale. Fortunatamente ce ne sono altri che funzionano meglio. Se avessi voluto dirti di stare alla larga dai database o dalla programmazione, l'avrei fatto. Dopo tutti i vs. consigli, voglio darvene anch'io uno inutile. Non dovete essere gelosi di chi, come me, per diletto (ripeto: per puro diletto), scrive due righe di codice in python ed sql per farsi una rubrichetta personale Grazie del consiglio. Hai ragione, almeno nel mio caso è totalmente inutile, chiedi a chiunque qui dentro. Spesso gli altri sono come uno specchio: vediamo in loro ciò che non ammettiamo in noi stessi. Chissà. Spero sempre che i miei pregiudizi vengano smentiti, ma non accade spesso. Continuo a sperare. -- Nicola 'tekNico' Larosa http://www.tekNico.net/ Sadly, the human brain came without documentation, like most open source projects. Luckily, we have many people who worked on understanding the human brain. Writing code meant to execute on brains is easier, and more efficient, after reading what sparse documentation we do have. - Moshe Zadka, March 2011 ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Juri Rudi rudij...@gmail.com: Vabe', evidentemente non siamo tutti uguali. Meglio così. Io vedo un gruppo intero di gente che ti da una mano, come adesso Nicola che vuole parlarti dei problemi di MySQL, ma è chiaramente materia che non ti interessa. Mentre da parte tua vedo una persona che prende in giro un gruppo di persone perché è troppo pignolo sul suo lavoro... Non è il tuo lavoro e questo è chiaro, però è il nostro e questa è la nostra lista, stai fuori dal discorso se ti va, impara qualcosa da noi se ti va, continua a chiedere una mano, siamo tutti contenti che hai scritto un programma in python. A parte le battute qui nessuno ti banna perché sei scarso, semmai ti aiuta a diventare bravo. PS. non ho capito il discorso della gelosia ... ti d'ho un altro consiglio. leggiti orgoglio e pregiudizio. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
2014-09-11 15:12 GMT+02:00 Juri Rudi rudij...@gmail.com: Dopo tutti i vs. consigli, voglio darvene anch'io uno inutile. Non dovete essere gelosi di chi, come me, per diletto (ripeto: per puro diletto), scrive due righe di codice in python ed sql per farsi una rubrichetta personale, che peraltro -sia detto per inciso- funziona da Dio (anche questo non deve dispiacervi). Gelosi? Sul serio hai scritto gelosi? Volevo accettare il consiglio di Daniele: anche se un po' rude (come spesso gli capita ultimamente) era giusto. Ma rinuncio per un attimo alla mia astensione in questo thread per dirti che non potevi prendere una cantonata piu` grande. Ma davero davero, come dice Nicola. Tutti i pythonisti, quelli veri, amano il loro linguaggio e lo vorrebbero vedere conosciuto e usato (possibilmente bene) da tutti, programmatori professionali e non. Ciao. Marco. -- http://beri.it/ - Un blog http://beri.it/i-miei-libri/ - Qualche libro ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
[Python] Esclusione della query vuota
Salve a tutti, spero che qualcuno possa aiutarmi. Ho una tabella mysql con tre campi: nome, cognome e paese. Il mio desiderio sarebbe quello di effettuare una ricerca in quella tabella attraverso una maschera con tre caselle, una per ogni campo, in cui inserire il valore da cercare, ed un unico tasto cerca con il comando di ricerca. Vorrei, insomma, che il database mysql mi restituisse i record conformi alle caselle riempite dall'utente (ad es., Paolo di Modena), senza però darmi tutti i Paolo che non sono di Modena né tutti quelli di Modena che non si chiamano Paolo, ma soprattutto che non consideri le caselle vuote (ad es., il cognome di Paolo non sarebbe un campo vuoto nella tabella ma semplicemente un campo irrilevante ai fini della ricerca, perché altrimenti se Paolo ha invece un cognome quel record verrebbe escluso dalla ricerca solo perché la casella è None). Il problema è che non riesco a cd escludere dalla ricerca le caselle lasciate eventualmente vuote. Mi sono sicuramente spiegato male, scusate. Il codice che avevo abbozzato è il seguente: # nome: nome_etichetta=Label(cerca_window, text=nome:).grid(row=100, column=10) # chiede di inserire il valore da cercare nel db nome= StringVar(cerca_window) nome_casella=Entry(cerca_window, textvariable=nome).grid(row=100, column=20) nome.get() # cognome: cognome_etichetta=Label(cerca_window, text=cognome:).grid(row=110, column=10) # chiede di inserire il valore da cercare nel db nome= StringVar(cerca_window) nome_casella=Entry(cerca_window, textvariable=cognome).grid(row=110, column=20) cognome.get() # paese: paese_etichetta=Label(cerca_window, text=paese:).grid(row=120, column=10) # chiede di inserire il valore da cercare nel db paese= StringVar(cerca_window) paese_casella=Entry(cerca_window, textvariable=paese).grid(row=120, column=20) paese.get() def cerca_def(): cliens = select cognome, nome, paese from rubrica where (cognome = '%s' OR nome = '%s' OR paese = '%s') % (cognome.get(), nome.get(), paese.get()) cursore.execute(cliens) risultato = cursore.fetchall() print (risultato) if risultato != : risultato1=str(risultato) risultato2=risultato1.strip([()',)]) risultato_ricerca_window = Tk() risultato_ricerca_window.title(Risultato della ricerca) risultato_button = Button(risultato_ricerca_window, text=risultato2).pack(side=TOP) OK2 = Button(cerca_window, text=Cerca, command = cerca_def).grid(row=120, column=10) Riuscite a darmi una mano? Grazie mille per l'attenzione (e il tempo) che vorrete dedicare a questa mia email. Juri ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
On 2014-09-10 21:08, Juri Rudi wrote: def cerca_def(): cliens = select cognome, nome, paese from rubrica where (cognome = '%s' OR nome = '%s' OR paese = '%s') % (cognome.get(), nome.get(), paese.get()) Che succede se uno ha un apostrofo nel cognome? L'errore che stai facendo probabilmente (ma non conosco come si comporta mysql) e' che i campi vuoti vanno cercati con nome is null, non con nome = '' e ancora meno con nome = 'None'. -- Daniele ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Il 10/09/2014 22:15, Daniele Varrazzo ha scritto: On 2014-09-10 21:08, Juri Rudi wrote: def cerca_def(): cliens = select cognome, nome, paese from rubrica where (cognome = '%s' OR nome = '%s' OR paese = '%s') % (cognome.get(), nome.get(), paese.get()) Che succede se uno ha un apostrofo nel cognome? Al momento mi dà errore. Ma sto convertendo le tabelle: http://www.sergiorinaudo.com/come-risolvere-il-problema-dei-caratteri-accentati-e-caratteri-esteri-su-db-mysql-e-php-usanto-il-charset-utf8/ ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
2014-09-10 22:08 GMT+02:00 Juri Rudi rudij...@gmail.com: cliens = select cognome, nome, paese from rubrica where (cognome = '%s' OR nome = '%s' OR paese = '%s') % (cognome.get(), nome.get(), paese.get()) cursore.execute(cliens) Fai fare l'inserimento dei dati al db, non cercare di farne te l'escape (generando la stringa sql). Lui sa come fare. http://dev.mysql.com/doc/connector-python/en/connector-python-example-cursor-select.html sql = select cognome, nome, paese from rubrica where (cognome = %s OR nome = %s OR paese = %s cursore.execute(sql, (cognome.get(), nome.get(), paese.get()) -- | Raffaele Salmaso | http://salmaso.org | https://bitbucket.org/rsalmaso | http://gnammo.com ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Il 10/09/2014 22:23, Raffaele Salmaso ha scritto: 2014-09-10 22:08 GMT+02:00 Juri Rudi rudij...@gmail.com mailto:rudij...@gmail.com: cliens = select cognome, nome, paese from rubrica where (cognome = '%s' OR nome = '%s' OR paese = '%s') % (cognome.get(), nome.get(), paese.get()) cursore.execute(cliens) Fai fare l'inserimento dei dati al db, non cercare di farne te l'escape (generando la stringa sql). Lui sa come fare. http://dev.mysql.com/doc/connector-python/en/connector-python-example-cursor-select.html sql = select cognome, nome, paese from rubrica where (cognome = %s OR nome = %s OR paese = %s cursore.execute(sql, (cognome.get(), nome.get(), paese.get()) Grazie. Anche così, però, l'operatore logico OR mi restituisce ancora tutti quelli di Modena e non solo Paolo :( ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
On 2014-09-10 21:16, Juri Rudi wrote: Il 10/09/2014 22:15, Daniele Varrazzo ha scritto: On 2014-09-10 21:08, Juri Rudi wrote: def cerca_def(): cliens = select cognome, nome, paese from rubrica where (cognome = '%s' OR nome = '%s' OR paese = '%s') % (cognome.get(), nome.get(), paese.get()) Che succede se uno ha un apostrofo nel cognome? Al momento mi dà errore. Ma sto convertendo le tabelle: http://www.sergiorinaudo.com/come-risolvere-il-problema-dei-caratteri-accentati-e-caratteri-esteri-su-db-mysql-e-php-usanto-il-charset-utf8/ Non è esattamente la stessa cosa. Cosa succede se il mio nome è Daniele'; DROP TABLE rubrica; -- Fammi sapere. -- Daniele ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Il 10/09/2014 23:38, Daniele Varrazzo ha scritto: Daniele'; DROP TABLE rubrica; -- Immagino che mi secchi la tabella. Ma dubito che io farei mai quel tipo di ricerca :) ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
* Juri Rudi (rudij...@gmail.com) [140910 23:41]: Il 10/09/2014 23:38, Daniele Varrazzo ha scritto: Daniele'; DROP TABLE rubrica; -- Immagino che mi secchi la tabella. Ma dubito che io farei mai quel tipo di ricerca :) tu non la faresti mai, ma il problema è che Daniele si chiama proprio così, cioè all'anagrafe di secondo nome fa '; DROP TABLE rubrica; -- pensa che da piccolo lo chiamavano Little Danny Tables [1] [1] ovviamente qua: http://xkcd.com/327/ -- .*.finelli /V\ (/ \) -- ( ) Linux: Friends dont let friends use Piccolosoffice ^^-^^ -- bunda mole ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Il 11/09/2014 00:17, m ha scritto: * Juri Rudi (rudij...@gmail.com) [140910 23:41]: Il 10/09/2014 23:38, Daniele Varrazzo ha scritto: Daniele'; DROP TABLE rubrica; -- Immagino che mi secchi la tabella. Ma dubito che io farei mai quel tipo di ricerca :) tu non la faresti mai, ma il problema è che Daniele si chiama proprio così, cioè all'anagrafe di secondo nome fa '; DROP TABLE rubrica; -- Immagino. Solo che quella rubrica deve e può essere compulsata solo da me; chiunque altro può ovviamente farlo, ma non altrettanto legittimamente, cioè senza correre il seppur remoto rischio di essere incriminato per accesso abusivo ad un sistema informatico :) Direi quindi che il problema degli accenti non ha nulla a che fare con il drop. pensa che da piccolo lo chiamavano Little Danny Tables [1] [1] ovviamente qua: http://xkcd.com/327/ Ottimo :) ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Juri Rudi rudij...@gmail.com wrote: Direi quindi che il problema degli accenti non ha nulla a che fare con il drop. fammi capire, se fai l'idraulico a casa tua puoi attaccare i tubi con lo scotch? -- Simone Federici Software Craftsman XP, Agile, Scrum, Kanban Quality, performance security Explicit is better than implicit. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Esclusione della query vuota
Il 11/09/2014 00:37, Simone Federici ha scritto: Juri Rudi rudij...@gmail.com mailto:rudij...@gmail.com wrote: Direi quindi che il problema degli accenti non ha nulla a che fare con il drop. fammi capire, se fai l'idraulico a casa tua puoi attaccare i tubi con lo scotch? Diciamo che se un servizio non è esposto né al web né all'uso di terzi, non tutte le cautele sono necessarie, imho. Se la rubrica in questione la uso solo io e dovessi auto proteggermi da sql injection, farei meglio ad attaccare i tubi con lo scotch. Comunque grazie, ho risolto. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python