$wv->rowOrder($conf) sirve para manejar una lista de elementos en una base de datos con un campo de orden.
$conf es un array con los siguientes valores:
- dbdata: array o string en json con el formato [tabla,orden,id,campo_filtrado,valor_filtrado], indica la estructura de la tabla con los datos. Los campos de filtrado son opcionales y sirven para seleccionar conjuntos de elementos dentro de una tabla, por ejemplo, en una tabla de automóviles podría ser campo=marca, valor=seat.
- id: Campo únido de identificación de la tabla, normalmente el campo ID primario.
- cmd: Commando "up" o "down" (arriba, abajo), usado para subir o bajar un puesto el ID indicado.
- box: En una lista se pueden añadir checkboxes con el nombre box[] y el valor ID de cada registro, p.e. , al enviar el formulario con estos checkboxes, los marcados se moveran a la posición indicada por el valor id. cmd debe estar vacío (null).
- ar: (Anti Reload) - Evita que se ejecuten el movimiento de posición si se recarga la página si este campo es true. Se puede usar en conjunto con el método antiReload.
Ejemplo de uso:
//Configuración de la base de datos
$dbdata['table'] = "nombre-tabla";
$dbdata['order'] = "orden";
$dbdata['ffield'] = "campo-filtrado";
$dbdata['fvalue'] = "valor-filtrado";
//Configuración del método
$_conf = array();
$_conf['dbdata'] = $dbdata;
$_conf['id'] = $id;
$_conf['cmd'] = $cmd;
$_conf['box'] = $box;
$_conf['ar'] = $ar_bl;
$position = $wv->rowOrder($_conf);
if (isset($position->err)) {
$wv->showMsg($position->err,array('style' => 'danger','title' => 'ORDER CLASS ERROR'));
}
if (isset($position->msg)) {
$wv->showMsg($position->msg);
}
Formulario:
get_results("SELECT * FROM vehiculos WHERE marca = '$marca' ")
foreach ((object)$result as $r) {
|
ID |
Marca |
Modelo |
Orden |
|||
---|---|---|---|---|---|---|---|
|
id?> |
marca?> |
modelo?> |
field_order?> |
last != $r->id): ?> ▼ |
first != $r->id): ?> ▲ |