eSShop Bug nel comando Sql Insert

Sezione per discutere di Moduli/Plugin sviluppati dalla comunità italiana
Locked
reset
Forum Members
Forum Members
Posts: 17
Joined: Thu Jul 05, 2007 2:44 pm

eSShop Bug nel comando Sql Insert

Post by reset »

Ciao bella comunità.
Ho installato il modulo Esshop.
Ho notato che c'è un bel bug, quando il campo brief_description e description contengono l'apice ' si verifica il classico errore di Sql che vede utilizzato un carettere riservato e chiude il comando.

Il problema secondo me si verifica nel file products.php residente in /includes/admin/, ho provato in vari modi con il replace ma non sono riuscito.

Mi sembra anche tanto strano che tranne due o tre utenti nel forum generale (che non hanno risolto il problema) non sia mai capitato a nessun altro.

Piu' che altro vorrei sapere se invece che correggerlo nella pagina stessa non devo richiamare quel controllo (function validate_search_string($s) )  che evidentemente viene eseguito su moduli come le news ed altro.

Grazie dell'attenzione.  ::)
Jac
Last edited by reset on Tue Feb 19, 2008 12:57 pm, edited 1 time in total.
alby

Re: eSShop Bug nel comando Sql Insert

Post by alby »

reset wrote: Piu' che altro vorrei sapere se invece che correggerlo nella pagina stessa non devo richiamare quel controllo (function validate_search_string($s) )  che evidentemente viene eseguito su moduli come le news ed altro.
Se il modulo utilizza adodb basta nella chiamata della query inserire ? al posto della variabile e nel comando Excute inserite un array con tutte le variabili, es:

Code: Select all

	$query = 'INSERT INTO '.cms_db_prefix().'module_news (news_id, news_category_id, news_title, news_data, summary, status, news_date, start_time, end_time, create_date, modified_date,author_id,news_extra) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?)';
	$dbr = $db->Execute($query, array($articleid, $usedcategory, $title, $content, $summary, $status, trim($db->DBTimeStamp($postdate), "'"), trim($db->DBTimeStamp($startdate), "'"), trim($db->DBTimeStamp($enddate), "'"), trim($db->DBTimeStamp(time()), "'"), trim($db->DBTimeStamp(time()), "'"), $userid, $extra));
a questo punto i valori delle variabili sono già corretti per la query

Alby
Locked

Return to “Moduli/Plugins”