Jump to content

Ayuda Integración de llamada sql en modulo


Recommended Posts

Hola compis.

 

A ver si algún genio puede echarme una manita con esto, que no consigo resolver.

 

He creado este modulo que vendrá dentro de las estadisticas tanto en 1.5 como en 1.6.

 

La instalación, nombre y demas lo tengo solventado., pero creo que estoy haciendo algo mal al llamar al sql.

 

Por aqui es por donde algo falla.

public function hookAdminStatsModules()
	{
		$ru = AdminController::$currentIndex.'&module='.$this->name.'&token='.Tools::getValue('token');
		$currency = new Currency(Configuration::get('PS_CURRENCY_DEFAULT'));
		
		$sql = 'SELECT R.reference, N.name, B.name, M.customer_email
				FROM '._DB_PREFIX_.'product R 
				LEFT JOIN '._DB_PREFIX_.'product_lang N ON R.id_product = N.id_product
				LEFT JOIN '._DB_PREFIX_.'mailalert_customer_oos M ON R.id_product = M.id_product
				LEFT JOIN '._DB_PREFIX_.'product_attribute_combination A ON M.id_product_attribute = A.id_product_attribute
				LEFT JOIN '._DB_PREFIX_.'attribute_lang B ON A.id_attribute = B.id_attribute
				GROUP BY email';

		$products = Db::getInstance()->executeS($sql);
		
		foreach ($products as $key => $p)
			
		$this->html .= '
		<script type="text/javascript">$(\'#calendar\').slideToggle();</script>

		<div class="panel-heading">'
			.$this->l('Consultas sobre stock.').
		'</div>';

		if (!count($products))
			$this->html .= '<p>'.$this->l('No hay consultas.').'</p>';
		else
		{
			$this->html .= '
			<table class="table">
				<thead>
					<tr>
						<th><span class="title_box active">'.$this->l('Ref.').'</span></th>
						<th><span class="title_box active">'.$this->l('Nombre').'</span></th>
						<th><span class="title_box active">'.$this->l('Atributo').'</span></th>
						<th><span class="title_box active">'.$this->l('Email').'</span></th>
					</tr>
				</thead>
				<tbody>';
				foreach ($products as $product)
				{
					$this->html .= '<tr>
						<td>'.$product['R.reference'].'</td>
						<td>'.$product['N.name'].'</td>
						<td>'.$product['B.name'].'</td>
						<td>'.$product['M.customer_email'].'</td>
					</tr>';
				}
				$this->html .= '
				</tbody>
			</table>';

			return $this->html;
		}
	}

No muestra ningún resultado.

 

Podriais ayudarme a ver donde puede estar mi fallo??. Creo que es por la parte del foreach...

 

Gracias.

Edited by Manz Soluciones (see edit history)
Link to comment
Share on other sites

Ya esta arreglado.

 

Problema en la llamada

SELECT R.reference AS referencia, N.name AS nombre, B.name AS atributo, M.customer_email AS email

Y en la consulta

{
					$this->html .= '<tr>
						<td>'.$product['referencia'].'</td>
						<td>'.$product['nombre'].'</td>
						<td>'.$product['atributo'].'</td>
						<td>'.$product['email'].'</td>
					</tr>';
				}
Link to comment
Share on other sites

  • nadie locked this topic
Guest
This topic is now closed to further replies.
×
×
  • Create New...