Jump to content

[SOLUCIONADO] Script simple en prestashop


Adsoa

Recommended Posts

Hola a todos.

 

Estoy curioseando un poco por prestashop y me interesa hacer un script en php que haga consultas simples pero que no sea un módulo y lo pueda llamar desde una URL, pongo un ejemplo.

 

Supongamos que el fichero se llama prueba.php y que contiene las siguientes líneas.

<?php
$query = 'SELECT COUNT(*) FROM ps_product;';

echo 'Consulta = '.$query.'<br><br>';

$productos_ps = Db::getInstance()->ExecuteS($query);

echo 'Productos = '.$productos_ps.'<br>';
?>

 

Este fichero lo guardo en la carpeta de administración y se llamaría al script con una URL similar a esta: "http://www.direccion.com/carpeta_admin/prueba.php".

 

La cuestión es que no se ejecuta la consulta y creo entender que es porque la clase Db no está incluida. Es esto en lo que necesito que alguien me ayude.

 

Gracias por adelanto.

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

  On 2/7/2013 at 8:33 AM, petete2008 said:

Agrega al inicio de tu script lo siguiente :

define('PS_ADMIN_DIR', getcwd());

include(PS_ADMIN_DIR.'/../config/config.inc.php');

 

Muchisimas gracias petete2008, queda solucionado.

Link to comment
Share on other sites

Además has usado ExecuteS incorrectamente porque esta función de classes DB se utiliza cuando la consulta devuelve varios registros y no es tu caso.

 

seria :

 

define('PS_ADMIN_DIR', getcwd());
include(PS_ADMIN_DIR.'/../config/config.inc.php');
$query = 'SELECT COUNT(*) AS num FROM ps_product;';
echo 'Consulta = '.$query.'<br><br>';
$result = Db::getInstance()->getRow($query);
echo 'Num Productos = '.$result['num'].'<br>';

 

Ya nos dices que tal tal fué

Link to comment
Share on other sites

  On 2/7/2013 at 8:36 AM, petete2008 said:

Además has usado ExecuteS incorrectamente porque esta función de classes DB se utiliza cuando la consulta devuelve varios registros y no es tu caso.

 

seria :

 

define('PS_ADMIN_DIR', getcwd());
include(PS_ADMIN_DIR.'/../config/config.inc.php');
$query = 'SELECT COUNT(*) AS num FROM ps_product;';
echo 'Consulta = '.$query.'<br><br>';
$result = Db::getInstance()->getRow($query);
echo 'Num Productos = '.$result['num'].'<br>';

 

Ya nos dices que tal tal fué

 

Si, cierto, no me habia dado cuenta, el código de prueba es un copia-pega de otro que tengo que consulto un solo dato.

Gracias por la corrección.

Link to comment
Share on other sites

  On 2/7/2013 at 12:55 PM, sors11 said:

y al final como queda Adsoa? me puedes explicar com ohaces eso de mediante un link sacas datos? estoy un poco pez en ese tema :) y para qué utilidad lo quieres?

 

Hola sors11.

 

Al final quedaría tal y como dijo petete2008

 

 

define('PS_ADMIN_DIR', getcwd());
include(PS_ADMIN_DIR.'/../config/config.inc.php');
$query = 'SELECT COUNT(*) AS num FROM ps_product;';
echo 'Consulta = '.$query.'<br><br>';
$result = Db::getInstance()->getRow($query);
echo 'Num Productos = '.$result['num'].'<br>';

 

Al fichero lo llamo de la siguiente forma:

  On 2/7/2013 at 8:23 AM, Adsoa said:

Este fichero lo guardo en la carpeta de administración y se llamaría al script con una URL similar a esta: "http://www.direccion.com/carpeta_admin/prueba.php".

 

En cuanto a la utilidad, el ejemplo era simplemente para hacer consultas a la BD, la finalidad es bastante mas compleja en un proyecto que tengo pendiente. ;)

 

Saludos.

Link to comment
Share on other sites

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